0

我正在使用 MVVM 开发 WPF 应用程序,但没有使用任何 MVVM 框架,如 MVVM light 等。我创建了承载至少 8 到 9 个控件的用户控件,这显示在主窗口的 ItemControl 中。主窗口有保存和关闭按钮。我已经实现了自定义数据验证,如果任何控件具有数据验证,它会禁用保存按钮。这在所有其他控件中按预期工作,但不适用于 ItemControl。用户控件具有数据验证并显示验证错误,但我无法禁用保存按钮。任何帮助将不胜感激。如果您需要更多详细信息,请告诉我。

4

1 回答 1

0

要启用或禁用按钮,您必须考虑使用MVVM 命令

它们将允许您将命令绑定到具有CanExecute()委托功能的按钮(例如保存)。这CanExecute()可以检查是否有任何用户控件ItemsControl无效(使用用户控件的有效性属性),然后返回 false。

CanExecute()几乎每一次呈现 UI 的机会都会被触发,因此它是一种可观察的。

于 2012-01-18T05:30:05.087 回答