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

问题描述:

我有一个按钮,我想在某些情况下禁用。为了确定这一点,我使用视图中的许多控件的选择。为了简化这个问题,两个comboBox。如何在更改众多条件之一时设置属性?

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

编辑:

之前多值转换器我想要说的多结合当我说。

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

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

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

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

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

+1

您是否考虑过使用多重绑定? – McGarnagle 2013-04-29 18:22:25

+1

看看这个 http://www.codeproject.com/Articles/328978/Introduction-to-multi-binding-and-multi-value-conv – 2013-04-29 18:24:34

+0

真的,我想说多个绑定,当我说多值转换器。 – 2013-04-29 18:37:35

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

只要你结合要么DependencyProperty的值或一部分(正确)实现INotifyPropertyChanged类的值,这将自动发生。你不需要做任何事情来更新值。

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