7 Stimmen

Ist die Bindung von IsEnabled bei der Bindung von Command optional?

Ich habe festgestellt, dass der folgende Code:

<Button Content="_Timbres..." 
    Command="{Binding Path=ShowTimbresCommand}" 
    IsEnabled="{Binding Path=CanExecuteShowTimbresCommand}"/>

verhält sich genauso wie:

<Button Content="_Timbres..." 
    Command="{Binding Path=ShowTimbresCommand}">

Das bedeutet, dass der Befehl CanExecuteShowTimbresCommand automatisch an die Eigenschaft IsEnabled gebunden ist. Ist das wahr und warum?

15voto

H.B. Punkte 140726

Normalerweise werden Kontrollen, die eine Command wird eingestellt IsEnabled à false wenn der Befehl CanExecute es false und das ist alles, was zählt.

MSDN :

Ein weiterer Zweck von Befehlen ist es, anzuzeigen, ob eine Aktion verfügbar ist. [...] Eine Schaltfläche kann sich für den CanExecuteChanged Ereignis und werden deaktiviert, wenn CanExecute gibt zurück. falsch oder aktiviert werden, wenn CanExecute gibt zurück. wahr .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X