Comment changer la couleur d'arrière-plan de contrôle TabControl.L'en-tête
J'ai besoin de changer la couleur de fond du TabControl en-tête, mais TabControl n'ai pas bien pour elle, comment puis-je le faire. Aider moi s'il vous plaît. Voici mon code:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="502" Width="628">
<TabControl Background="#123" TabStripPlacement="Left" HorizontalAlignment="Stretch" BorderBrush="#41020202">
<TabControl.BitmapEffect>
<DropShadowBitmapEffect Color="Black" Direction="270"/>
</TabControl.BitmapEffect>
<TabControl.Resources>
<Style TargetType="{x:Type TabItem}">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Padding" Value="0" />
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<Border x:Name="grid" Background="Red">
<ContentPresenter>
<ContentPresenter.Content>
<TextBlock Margin="4" FontSize="15" Text="{TemplateBinding Content}"/>
</ContentPresenter.Content>
<ContentPresenter.LayoutTransform>
<RotateTransform Angle="270" />
</ContentPresenter.LayoutTransform>
</ContentPresenter>
</Border>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type TabItem}},Path=IsSelected}" Value="True">
<Setter TargetName="grid" Property="Background" Value="Green"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</TabControl.Resources>
<TabItem Header="Tab Item 1" />
<TabItem Header="Tab Item 2" />
<TabItem Header="Tab Item 3" />
<TabItem Header="Tab Item 4" />
</TabControl>
</Window>
Voici mon résultat:
Ici est le résultat que j'ai besoin de:
Je me souviens d'être coincé sur cette question aussi, si je me souviens bien, j'ai un projet à la maison dans laquelle j'ai résolu, je vais le chercher si vous n'avez pas encore trouvé d'ici là.
Vous pouvez toujours modifier le modèle de contrôle par la copie et de la faire vos modifications locales. C'est lourd mais aussi ce qui fait WPF donc flexible.
Cherchez, s'il vous plaît. Il a vraiment besoin de moi.
J'ai pereprobyval de tous les styles: TabControl.ItemContainerStyle, TabControl.ItemsPanel, TabControl.Style, mais pourtant, pas un seul n'a pas d'aide, s'il vous plaît dites-moi ce style doit être changé au moins
Vous pouvez toujours modifier le modèle de contrôle par la copie et de la faire vos modifications locales. C'est lourd mais aussi ce qui fait WPF donc flexible.
Cherchez, s'il vous plaît. Il a vraiment besoin de moi.
J'ai pereprobyval de tous les styles: TabControl.ItemContainerStyle, TabControl.ItemsPanel, TabControl.Style, mais pourtant, pas un seul n'a pas d'aide, s'il vous plaît dites-moi ce style doit être changé au moins
OriginalL'auteur Creative | 2012-05-29
Vous devez vous connecter pour publier un commentaire.
Adjonction de style dans le TabControl.Section des ressources devrait faire ce que vous voulez.
+1, réponse très simple. Fonctionne bien... probablement doit être marqué comme meilleure réponse
!!! merci beaucoup
OriginalL'auteur ShadeOfGrey
Vous devez définir le style de la TabPanel... en gros, nous avons organiser les Onglets dans la TabPanel dans le TabControl.
Le code ci-dessous va vous aider..
OriginalL'auteur David Bekham
La solution ci-dessus ne fonctionne pas pour moi, mais j'ai eu mon Contrôle Onglet dans un Contrôle Utilisateur et pas une fenêtre.
Paramètre de Contrôle de l'Utilisateur la couleur de fond au lieu correction du problème; peut-être que ce sera utile pour d'autres avec le même problème si l'voté solution ne fonctionne pas.
OriginalL'auteur Whirlwind991