I’ve created the MvcGroup add-in that groups ASP.NET MVC controller and view tabs near each other (a controller is placed before views). This add-in also adds IsController, IsView and GroupName properties that can be used to color MVC tabs by type and/or by group name. See the following two examples:
<Style TargetType="TabsStudio:Tab" BasedOn="{StaticResource DefaultTabStyle}">
<Style.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="TabsStudioMvcGroup:Properties.IsController" Value="True"/>
<Condition Property="IsTabSelected" Value="False"/>
</MultiTrigger.Conditions>
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="#F5F5F5" Offset="0"/>
<GradientStop Color="#B0D0B0" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="TabsStudioMvcGroup:Properties.IsView" Value="True"/>
<Condition Property="IsTabSelected" Value="False"/>
</MultiTrigger.Conditions>
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="#F5F5F5" Offset="0"/>
<GradientStop Color="#B0B0D0" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</MultiTrigger>
</Style.Triggers>
</Style>
<Style TargetType="TabsStudio:Tab" BasedOn="{StaticResource DefaultTabStyle}">
<Style.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="TabsStudioMvcGroup:Properties.GroupName" Value="Account"/>
<Condition Property="IsTabSelected" Value="False"/>
</MultiTrigger.Conditions>
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="#F5F5F5" Offset="0"/>
<GradientStop Color="#B0D0B0" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="TabsStudioMvcGroup:Properties.GroupName" Value="Home"/>
<Condition Property="IsTabSelected" Value="False"/>
</MultiTrigger.Conditions>
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="#F5F5F5" Offset="0"/>
<GradientStop Color="#B0B0D0" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</MultiTrigger>
</Style.Triggers>
</Style>
Download link: MvcGroup v1.0.0.



This is awesome! Thanks very much!! Just what I wanted 🙂
Comment by Mike Nelson — September 6, 2010 @ 2:44 pm
Nice job. The colours look great but I can’t get it to group my controllers and views. I’m using the first style above.
Comment by RossRoss — August 30, 2011 @ 10:26 pm
Ross,
Do you have other Tabs Studio add-ins enabled? For example, Sorter takes priority in tabs ordering.
Is this problem reproducible for you with a new ASP.NET MVC 2 Web Application project in Visual Studio 2010?
Comment by Sergey Vlasov — August 31, 2011 @ 6:36 am