2014-11-08 55 views
0

有沒有一種方法可以在單擊按鈕後使整個WPF窗口變爲惰性?禁用WPF窗口中的所有輸入控件

窗口通過Window.ShowDialog()調用,使用後窗口不再需要進行交互,但是我將其打開以提醒用戶TextBox,ListBox中的輸入,並通過OxyPlot提供視覺反饋,等等。我把它留給用戶手動關閉窗口。

一個解決方案是禁用所有的按鈕,但這是乏味的,它仍然留下文本框的功能。這不是最佳的,因爲任何需要運作的東西都會產生錯誤的印象,認爲窗口只能用於其他任何目的。每個控制器通過單一設置不起作用會更好。

回答

3

我通過在後面的WPF窗口代碼上設置名稱,然後在適當的按鈕單擊時設置.IsEnabled爲false。所有的按鈕,組合框,文本框,甚至OxyPlot在那個時候都變得不活躍,大部分部分都變灰了。

1

請考慮在代碼隱藏或視圖模型中創建專用的布爾依賴項屬性,並將的每個綁定到該屬性。