J'utilise <Separator />
dans mon formulaire mais je ne sais pas comment changer sa couleur. Il n'existe pas de Border
/Foreground
/Background
. Plese aide.Comment changer la couleur du a WPF `<Separator />`?
Répondre
Utilisez les styles
<Style x:Key="MySeparatorStyle" TargetType="{x:Type Separator}">
<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.ControlDarkBrushKey}}"/>
<Setter Property="Margin" Value="0,2,0,2"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Separator}">
<Border
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Background="{TemplateBinding Background}"
Height="1"
SnapsToDevicePixels="true"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
A seperator est juste un élément de frontière et maintenant vous pouvez changer son apparence comme vous le souhaitez?
Hmm ... Je pense que le Separator
est l'un des rares éléments qui ne fonctionnera pas en utilisant un style simple. Basé sur la documentation MSDN, vous devez spécifier le SeparatorStyleKey
.
Par exemple, pour un ToolBar
vous faire:
<Style x:Key="{x:Static ToolBar.SeparatorStyleKey"
TargetType="{x:Type Separator}">
<Setter Property="Background"
Value="{DynamicResource {x:Static SystemColors.ControlDarkBrushKey}}"/>
<Setter Property="Margin" Value="0,2,0,2"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Separator}">
<Border
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Background="{TemplateBinding Background}"
Height="1"
SnapsToDevicePixels="true"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
+1 pour être la seule réponse qui fonctionne avec un séparateur de barre d'outils. Aucune des autres réponses ne fonctionne. – Benlitz
La dénomination de clé est importante. – code4life
BTW, voici un article expliquant pourquoi, et mentionnant aussi comment styliser l'autre type de séparateurs, à savoir les séparateurs de MenuItem: http://devlicio.us/blogs/christopher_bennage/archive/2008/06/19/styling-separators -in-wpf.aspx – Benlitz
Sinon, vous pouvez choisir d'utiliser un élément Rectangle:
<Rectangle HorizontalAlignment="Stretch" Fill="Blue" Height="2"/>
Il est un peu plus facile de modifier/forme.
Y at-il un moyen de rendre le rectangle non sélectionnable dans le menu contextuel? La bonne chose à propos du séparateur est vous ne pouvez pas le mettre en évidence, ce n'est pas un vrai MenuItem enfant – goldenratio
Vous pouvez définir l'arrière-plan:
<Separator Background="Red"/>
vous pouvez définir la couleur de Separator
en utilisant ce code:
<Separator BorderBrush="Red" BorderThickness="1"/>
NOTE que la propriété BorderThickness
doit être appliqué aussi.
- 1. WPF ListView Thousand Separator
- 2. Comment envelopper mot <ul><li><div><a></a></div></li></ul>
- 3. changer la couleur du bouton
- 4. Changement <select> couleur de surbrillance
- 5. Comment changer la couleur du texte RibbonStatusBarPane?
- 6. WPF Style: comment changer GradientStop couleur Trigger
- 7. comment insérer <a> dans <td>
- 8. IE couleur <dt> marée noire
- 9. ancre html: <a>
- 10. Comment changer la couleur du clignotement du curseur?
- 11. Comment puis-je changer la couleur du texte du menu?
- 12. Changer la couleur du texte dans DataGridVIewComboBoxCell
- 13. Changer la couleur du texte onclick
- 14. Comment changer la couleur du texte dans Disqus comment textarea?
- 15. Liste Recherche <Items> puis changer à la liste <ItemTypeA: Article>
- 16. Comment procéder <a href>?
- 17. jQuery + <a> tag
- 18. Changer la couleur du groupe de MKPinAnnotationView
- 19. changer la couleur du texte de uitabbaritem
- 20. Changer la couleur du clavier dans l'iphone
- 21. Comment changer la couleur de la bordure du formulaire C#?
- 22. comment changer la couleur du contrôleur de la barre d'onglets
- 23. Comment changer la couleur du survol dans VS 2010?
- 24. WPF Reliure pour changer la couleur de remplissage de l'ellipse
- 25. en cliquant sur <img> empêchant l'activation du <a>
- 26. Silverlight: Comment changer la couleur du texte TreeViewItem quand il a sélectionné
- 27. changer la classe d'un élément <span> avec JavaScript
- 28. PHP comment supprimer les balises HTML (<DIV></div>, <P></P>, <SPAN></SPAN>) de la chaîne
- 29. Comment changer la couleur du texte en javascript?
- 30. Comment changer la couleur du calendrier Outlook en C#?
Il ne fonctionne pas avec les séparateurs de barre d'outils, vérifiez la réponse de @ code4life ci-dessous. – Benlitz