webentwicklung-frage-antwort-db.com.de

Aktivieren / Deaktivieren von Textfeldern basierend auf der Auswahl der Kontrollkästchen in WPF mithilfe von MVVM

Ich habe ein WPF-Formular mit bis zu 40 Textfeldern mit einem Kontrollkästchen für jedes. Jedes Textfeld sollte basierend auf dem Wert des entsprechenden Kontrollkästchens aktiviert/deaktiviert werden. Ich habe Lösungen gesehen, bei denen wir ICommand verwenden können, um dies zu erreichen, aber wie gehe ich mit 40 Einzelfällen um, ohne 40 ICommand Implementierungen zu haben?

45
aliensurfer

Binden Sie einfach die Eigenschaft IsEnabled von TextBox an die Eigenschaft IsChecked von CheckBox:

<CheckBox Name="checkBox1" />
<TextBox IsEnabled="{Binding ElementName=checkBox1, Path=IsChecked}" />
105
Thomas Levesque

wenn Sie 40 Steuerelemente wie dieses haben, würde ich ein neues Steuerelement erstellen, das das Kontrollkästchen und das Textfeld enthält. Sie können dieses neue Steuerelement verwenden, ohne 40 Befehle implementieren zu müssen. Stattdessen verfügt Ihr neues Steuerelement über eine einzelne Befehlsimplementierung. und dies ist auch weniger Code als zusätzlicher Vorteil zu pflegen

0
Wesley Kenis