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