我有以下幾點:通過依賴屬性啓用暫時禁用按鈕
<Button Content="Do XXX" Height="23" Name="btnXXX"
IsEnabled="{Binding Path=(Model:INameOfInterface.CanDoXXX)}" />
<Button Content="Do YYY" Height="23" Name="btnYYY"
IsEnabled="{Binding Path=(Model:INameOfInterface.CanDoYYY)}" />
工作非常漂亮,btnXXX根據接口是否能爲YYY做XXX,btnYYY類似啓用或禁用。
但是,要強制每次點擊一個動作,我希望在點擊其中一個按鈕時禁用所有按鈕,即暫時覆蓋依賴關係並禁用按鈕,然後一旦執行動作,就重新建立依賴關係條件。
所以我的問題是:如何暫時禁用所有按鈕,然後繼續依賴
您的意思是行動完成後立即重新啓用按鈕嗎? – pbalaga
是的,但根據屬性。當然,我可以手動禁用所有,然後爲每個按鈕做:btnYYY.enabled = INameOfTheInterface.CanDoYYY,但這將打敗整個依賴屬性的目的,即它應該沒有編碼... – Avi
您可以創建bool屬性並將其與所有按鈕IsEnable綁定。每當你做了一些動作,使它成爲假的,並在完成動作後使其成爲真,這反過來將影響所有的按鈕。 –