I’ve created Tabs Studio mail list on Yahoo Groups for announcements and discussions. Welcome!
May 8, 2009
Tabs Studio v1.1.0 is released
Tabs Studio v1.1.0 is released. The only change comparing to v1.0.6 is that I removed default custom style example.
More styling examples
1. Change tool tip show delay for the whole tab and extensions to 500 ms (default delay is 1500 ms):
<Style TargetType="TabsStudio:Tab" BasedOn="{StaticResource DefaultTabStyle}">
<Setter Property="ToolTipService.InitialShowDelay" Value="500"/>
</Style>
<Style TargetType="TabsStudio:TabExtension" BasedOn="{StaticResource DefaultTabExtensionStyle}">
<Setter Property="ToolTipService.InitialShowDelay" Value="500"/>
</Style>
2. Add XP like top orange adornment for the selected tab:
<Style TargetType="TabsStudio:Tab" BasedOn="{StaticResource DefaultTabStyle}">
<Style.Triggers>
<Trigger Property="IsTabSelected" Value="True">
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="Orange" Offset="0"/>
<GradientStop Color="White" Offset="0.2"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="Margin" Value="0,-1,0,0"/>
</Trigger>
</Style.Triggers>
</Style>
Top orange adornment for selected tab
Updated styling examples for v1.0.6
As styling syntax was changing during development, I’m updating old examples for the latest Tabs Studio version 1.0.6.
Change tabs font family to Consolas and increase tabs font size to 12 points:
<Style TargetType="TabsStudio:Tabs" BasedOn="{StaticResource DefaultTabsStyle}">
<Setter Property="Control.FontFamily" Value="Consolas"/>
<Setter Property="Control.FontSize" Value="12pt"/>
</Style>
Custom tabs font family and size
Set Italic font style only for the selected tab name:
<Style TargetType="TabsStudio:TabName" BasedOn="{StaticResource DefaultTabNameStyle}">
<Style.Triggers>
<Trigger Property="IsTabSelected" Value="True">
<Setter Property="FontStyle" Value="Italic"/>
</Trigger>
</Style.Triggers>
</Style>
Italic font style for selected tab name
Default custom style example
I’m going to remove the commented example of how to change tabs font size from the Tabs Studio Settings dialog. It’s no good to store such information in user’s settings file after Save button is clicked. In user’s settings file it will sooner or later become outdated and I will not be able to update it.
<!-- An example of how to change tabs font size:
<Style TargetType="TabsStudio:Tabs" BasedOn="{StaticResource DefaultTabsStyle}">
<Setter Property="Control.FontSize" Value="12pt"/>
</Style>
-->
Other ways to provide examples I’m thinking of are adding them to documentation, creating dedicated styles gallery on Tabs Studio site, creating listbox with styling examples names and Insert button that pastes markup in the style text box.
May 7, 2009
Tabs Studio v1.0.6 is released
Tabs Studio v1.0.6 is released – added missing IsMultiExtensions property to TabToolTip, TabInternals and CloseTabButton controls; fixed tabs rows on selection; added Remove path from tab name option.
Removing path from tab name
Working on web projects, tab name can contain a path to a file and sometimes this path can be quite long:
Tab name with a path
So, I’ve added an option to remove path from tab name:

Remove path from tab name option
Tab name with a path removed
Fixing tabs rows on selection
When two or more tabs rows exist and you select tab in the top row this row goes to the bottom. Standard behavior, but confusing nevertheless. Not anymore! The rows are not affected by selection now:
Selected tab in the top row
Interesting side effect of this change is that when tab is selected and mouse is over it, tab’s background is a mix of white and blue colors on Vista:
Mouse over the selected tab
Standard behavior is a white tab’s background in this case, but I don’t know yet how to achieve this with controls library I use. Accidental mix of white and blue colors is interesting, so I’m leaving it as it is for now.
May 6, 2009
Styling documentation
Below is the visual tree of Tabs Studio controls with base types and additional properties:
Tabs : TabPanel
|
- Tab : TabItem (IsTabSelected, IsMultiExtensions)
|
- TabToolTip : ToolTip (IsTabSelected)
|
- TabInternals : DockPanel (IsTabSelected)
|
- TabNameGroup : StackPanel (IsTabSelected, IsMultiExtensions, IsNameReadOnly)
| |
| - TabName : Label (IsTabSelected, IsMultiExtensions, IsNameReadOnly)
| |
| - TabNameReadOnlyImage : Image (IsTabSelected, IsMultiExtensions, IsNameReadOnly)
|
- TabExtensionGroup : StackPanel (IsTabSelected, IsExtensionActive, IsExtensionReadOnly)
| |
| - TabExtension : Label (IsTabSelected, IsExtensionActive, IsExtensionReadOnly)
| | |
| | - TabExtensionToolTip : ToolTip (IsTabSelected, IsExtensionActive, IsExtensionReadOnly)
| |
| - TabExtensionReadOnlyImage : Image (IsTabSelected, IsExtensionActive, IsExtensionReadOnly)
|
- CloseTabButton : Image (IsTabSelected)
TabToolTip, TabInternals and CloseTabButton are missing IsMultiExtensions property – I’ll fix it in the next version. IsMultiExtensions is true when tab is a group of 2 or more extensions.
You can also look at default styles definition file for more styling ideas.
Tabs Studio v1.0.5 is released
Tabs Studio v1.0.5 is released – added styles support and close tab button.
