2014-11-08 53 views
0

有没有一种方法可以在单击按钮后使整个WPF窗口变为惰性?禁用WPF窗口中的所有输入控件

窗口通过Window.ShowDialog()调用,使用后窗口不再需要进行交互,但是我将其打开以提醒用户TextBox,ListBox中的输入,并通过OxyPlot提供视觉反馈,等等。我把它留给用户手动关闭窗口。

一个解决方案是禁用所有的按钮,但这是乏味的,它仍然留下文本框的功能。这不是最佳的,因为任何需要运作的东西都会产生错误的印象,认为窗口只能用于其他任何目的。每个控制器通过单一设置不起作用会更好。

回答

3

我通过在后面的WPF窗口代码上设置名称,然后在适当的按钮单击时设置.IsEnabled为false。所有的按钮,组合框,文本框,甚至OxyPlot在那个时候都变得不活跃,大部分部分都变灰了。

1

请考虑在代码隐藏或视图模型中创建专用的布尔依赖项属性,并将的每个绑定到该属性。