У меня есть следующий код в классе ViewModel, в конструкторе, где я определяю, что кнопки всегда включены = false при запуске формы ...
public partial class EditarConceptoWindow : ChildWindow
{
public EditarConceptoWindow(string documentoId)
{
InitializeComponent();
viewModel.Saved += new EventHandler<Microsoft.Practices.Prism.Events.DataEventArgs<bool>>(ViewModel_Saved);
viewModel.Calculation += new EventHandler<Microsoft.Practices.Prism.Events.DataEventArgs<bool>>(ViewModel_Calculation);
this.DataContext = viewModel;
BtnCalcular.IsEnabled = false;
BtnObtenerTCRM.IsEnabled = false;
....... rest of code
В проверенном событии проверки при установке флажка «Выбрано» для него должно быть установлено значение «истина» в зависимости от того, был ли выбран конкретный элемент комбинированного списка;
private void cbAgregarManual_Checked(object sender, RoutedEventArgs e)
{
if (this.ComboConcepto.SelectedValue.ToString() == "DPI")
{
BtnCalcular.IsEnabled = true;
BtnObtenerTCRM.IsEnabled= true;
}
}
Это необходимо сделать, если и только если флажок установлен и значение DPI выбрано в выпадающем списке.
Но поведение кнопок заключается в том, что при запуске формы они всегда IsEnabled = true, и если элемент управления флажок нажат, если он работает, но я не могу найти причину, потому что только до тех пор, пока я не установлю флажок, он работает, в XAML есть некоторые элементы управления (например, TextBoxes, а также кнопки) с этой директивой.
IsEnabled="{Binding ElementName=cbAgregarManual, Path=IsChecked }"