У меня есть форма WPF с целым количеством 40 текстовых полей, для каждой из которых есть флажок. Каждое текстовое поле должно быть включено/отключено в зависимости от значения его соответствующего флажка. Я видел решения, где мы можем использовать ICommand
для достижения этого, но как я могу обрабатывать 40 отдельных случаев без 40 ICommand
реализаций?
Включить/отключить текстовое поле на основе выбора флажка в WPF с использованием MVVM
Ответ 1
Просто привяжите свойство IsEnabled
свойства TextBox
к свойству IsChecked
CheckBox
:
<CheckBox Name="checkBox1" />
<TextBox IsEnabled="{Binding ElementName=checkBox1, Path=IsChecked}" />
Ответ 2
если у вас есть 40 таких элементов управления, я бы создал новый элемент управления, содержащий флажок и текстовое поле. Вы можете использовать этот новый элемент управления без необходимости реализации 40 команд, вместо этого ваш новый элемент управления имеет реализацию одной команды. и это также меньше кода для поддержки в качестве дополнительного преимущества