Modifier la couleur de fond d'un bouton bascule lorsque le bouton de basculement est cochée
Je veux changer la couleur de fond d'un bouton bascule lorsque le bouton de basculement est vérifié et vice versa.
Comment puis-je y parvenir?
Qu'avez-vous? qu'avez-vous essayé? Vous devriez essayer de mettre plus d'effort dans vous des questions, sinon personne ne se donnera la peine de vous répondre...
je suis nouveau sur WPF.J'ai un togglebutton sur ma fenêtre. lorsque l'utilisateur de vérifier la couleur d'arrière a changer et si elle est décochée par défaut, la couleur doit s'appliquer.Comment puis-je obtenir ce dans WPF. aider pls
je suis nouveau sur WPF.J'ai un togglebutton sur ma fenêtre. lorsque l'utilisateur de vérifier la couleur d'arrière a changer et si elle est décochée par défaut, la couleur doit s'appliquer.Comment puis-je obtenir ce dans WPF. aider pls
OriginalL'auteur vivek TP | 2011-04-11
Vous devez vous connecter pour publier un commentaire.
Près le même que Klaus, mais en utilisant "objet templatebinding" au lieu de "TargetName".
Avec l'objet templatebinding, le ControlTemplate utiliser le BorderBrush et le Fond de l'contrôles togglebutton DefaultStyle. Si le Déclencheur peut définir les contrôles togglebutton arrière-plan et la Bordure celui-ci va également être indiqué.
Pour ajouter le bouton de la frontière dans le benba solution: 'BorderThickness="{objet templatebinding BorderThickness}"'
OriginalL'auteur benba
Le meilleur moyen simple pour réaliser cela (et sans aucun Mélange et supérieur de 50 lignes de code XAML 😉 est de cette façon, c'est à dire à l'aide de déclencheurs :
Essayer ce, en premier lieu, avant d'aller plus loin et de voir si cela en fonction de vos besoins
J'aime bien cette solution, car elle conserve le sous-jacent touche ControlTemplate intacte et remplace seulement ce qui est spécial au sujet de boutons à bascule. Je soupçonne @Cheeso a des problèmes parce que le bouton par défaut modèle n'quelque chose "d'intelligent", alors que je suis en utilisant une mesure qui n'est pas intelligent du tout.
Cela n'a pas fonctionné pour moi, je suis en utilisant VS 2017 & WPF 4.5.
OriginalL'auteur Bruno
Vérifier cette solution:
OriginalL'auteur Alex Klaus
Avez-vous de l'Expression Blend? Il peut être fait facilement par un clic droit sur le ToggleButton et Sélectionnez "Modifier le Modèle", puis sur "Modifier une copie...". À partir du modèle d'aller à la "États" et sélectionnez l'Onglet "Checked" de l'état. Réinitialiser la couleur d'arrière-plan, à la différence de l'état de base et votre fait.
Voir l'exemple:
Les instructions a parfaitement fonctionné pour moi avec VS 2017. Certes, j'ai probablement le double de la code que j'ai vraiment besoin, c'était simple pour moi que WPF noob.
OriginalL'auteur Vinny Marquez
Une approche alternative consiste à gérer la le activée et Désactivée événements dans le code XAML comme ceci:
et dans le code-behind:
OriginalL'auteur Bruce