Reputation: 1640
I have a WPF form with as many as 40 textboxes, with a checkbox for each. Each textbox should be enabled/disabled based on the value of its corresponding checkbox. I've seen solutions where we can use ICommand
to achieve this, but how do I handle 40 individual cases without having 40 ICommand
implementations?
Upvotes: 63
Views: 76432
Reputation: 127
if you have 40 controls like this, I would create a new control containing the checkbox and the textbox. The you can use that new control without the need to implement 40 commands, instead your new control has a single command implementation. and this is also less code to maintain as additional benefit
Upvotes: 1
Reputation: 292415
Just bind the IsEnabled
property of the TextBox
to the IsChecked
property of the CheckBox
:
<CheckBox Name="checkBox1" />
<TextBox IsEnabled="{Binding ElementName=checkBox1, Path=IsChecked}" />
Upvotes: 126