如何在更改众多条件之一时设置属性?

时间:2013-04-29 18:17:53

标签: wpf mvvm

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

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

编辑:

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

也许我不是很清楚。我想要以下内容:

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

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

当我在任何一个comboBox中选择一个新项目时,重复这个过程。

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

1 个答案:

答案 0 :(得分:1)

  

但我不知道在其中一个组合框中的选择发生变化时如何执行转换器。

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

只需确保绑定值通知就好像它们是直接使用的那样,并且WPF会在使用IMultiValueConverter时处理这个问题。