Wpf 当更改多个条件之一时,如何设置属性?

Wpf 当更改多个条件之一时,如何设置属性?,wpf,mvvm,Wpf,Mvvm,我有一个按钮,我想在某些情况下禁用。为了确定这一点,我在视图中选择了许多控件。为了简化此问题,请使用两个组合框 所以IsEnabled取决于这两个控件中信息的组合,我需要在更改其中一个控件时评估新状态。我该怎么做?我知道我需要一个多值转换器来确定按钮是否被启用,但我不知道当组合框中的选择被更改时如何执行转换器 编辑: 当我在前面提到多值转换器时,我想说的是多绑定 也许我不是很清楚。我希望: 1.-开始时,按钮被禁用,两个组合框未选择任何项目 2.-当我在组合框中选择一个项目时,我需要执行用于设置

我有一个按钮,我想在某些情况下禁用。为了确定这一点,我在视图中选择了许多控件。为了简化此问题,请使用两个组合框

所以IsEnabled取决于这两个控件中信息的组合,我需要在更改其中一个控件时评估新状态。我该怎么做?我知道我需要一个多值转换器来确定按钮是否被启用,但我不知道当组合框中的选择被更改时如何执行转换器

编辑:

当我在前面提到多值转换器时,我想说的是多绑定

也许我不是很清楚。我希望:

1.-开始时,按钮被禁用,两个组合框未选择任何项目

2.-当我在组合框中选择一个项目时,我需要执行用于设置按钮IsEnabled属性的多重绑定

当我在组合框中选择一个新项目时,重复这个过程

我遇到的问题是,我不知道如何对按钮说,当我更改任何组合框中的选择时,按钮需要执行多重绑定以确定IsEnabled属性的值

但是我不知道当组合框中的一个选择被更改时如何执行转换器

只要绑定到的值是DependencyProperty值或(正确地)实现
INotifyPropertyChanged
的类的一部分,就会自动发生这种情况。您不需要做任何事情来更新这些值

只要确保绑定的值像直接使用一样发出通知,当使用
IMultiValueConverter
时,WPF就会处理这个问题

但是我不知道当组合框中的一个选择被更改时如何执行转换器

只要绑定到的值是DependencyProperty值或(正确地)实现
INotifyPropertyChanged
的类的一部分,就会自动发生这种情况。您不需要做任何事情来更新这些值


只要确保绑定值像直接使用一样发出通知,当使用
IMultiValueConverter
时,WPF会很好地处理这个问题。

你考虑过使用多重绑定吗?看看这个,当我说多重值转换器时,我真的想说多重绑定。你考虑过使用多重绑定吗?看看这个,当我说多重值转换器时,我真的想说多重绑定。