1

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

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

编辑:

当我之前说过多值转换器时,我想说的是多绑定。

可能我还不是很清楚。我想要以下内容:

1.- 一开始按钮被禁用,两个组合框没有选择任何项目。

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

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

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

4

1 回答 1

1

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

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

只需确保绑定值通知就好像它们被直接使用一样,WPF 会在使用时处理这个问题IMultiValueConverter

于 2013-04-29T18:21:56.560 回答