У меня есть несколько ComboBox в DataForm , и я пытаюсь сделать так, чтобы определенные ComboBox были отключены до тех пор, пока не будет выбран конкретный ComboBox. С этой целью я создал свойство уведомления с именем CanEditCombo
в классе, который связан с DataContext, и настроил мои комбинированные списки следующим образом:
<ComboBox ... IsEnabled="{Binding CanEditCombo, Mode=OneWay}" />
Изначально CanEditCombo
ложно, но мои комбинированные списки доступны для редактирования при первой загрузке DataForm.
Если я применяю тот же синтаксис привязки IsEnabled
к TextBox в моей DataForm, он работает как положено: сначала отключается, но включается, когда CanEditCombo
становится истинным.
Вот пример фрагмента XAML:
<toolkit:DataForm CurrentItem="{Binding NewProject, Mode=TwoWay}" x:Name="dfNewProject" CommandButtonsVisibility="None">
<toolkit:DataForm.EditTemplate>
<DataTemplate>
<StackPanel>
...
<toolkit:DataField>
<ComboBox ItemsSource="{Binding ProjectOptions, Mode=OneWay}"
SelectedValue="{Binding Options, Mode=TwoWay}"
DisplayMemberPath="Value"
SelectedValuePath="Key"
IsEnabled="{Binding CanEditCombo, Mode=OneWay}" />
</toolkit:DataField>
...
</StackPanel>
</DataTemplate>
</toolkit:DataForm.EditTemplate>
</toolkit:DataForm>
Более того, даже если я жестко закодирую свойство IsEnabled
ComboBox в False в разметке над ComboBox, все еще можно редактировать.
Как мне настроить свойство IsEnable
ComboBox с помощью синтаксиса привязки, когда ComboBox находится в DataForm?