2010-02-23 10 views
7

J'ai un ToggleButton. J'utilise une commande de liaison, et je veux passer la valeur de sa propriété IsChecked en tant que paramètre. Comment puis-je faire cela sans nommer le ToggleButton et en utilisant son nom pour s'adresser à lui-même?L'utilisation d'un WPF contrôle ses propres propriétés dans la commande Binding

Actuellement, je résous cela en nommant le contrôle, mais je suppose que cela peut être fait d'une meilleure façon?

<ToggleButton x:Name="_myToggle" 
       Command="{Binding SomeCommand}" 
       CommandParameter="{Binding ElementName=_myToggle, Path=IsChecked}"> 
    Apply Toggle 
</ToggleButton> 

Répondre

14

vous devez utiliser l'auto de liaison:

<ToggleButton x:Name="_myToggle" 
       Command="{Binding SomeCommand}" 
       CommandParameter="{Binding RelativeSource={RelativeSource Self}, 
             Path=IsChecked}"> 
    Apply Toggle 
</ToggleButton> 

Hope this helps!

+0

Bien sûr! THX! Je l'ai fait avant, mais je l'avais complètement oublié depuis un moment là .. – stiank81