有誰知道如何找出wpf窗口是否被「x」按鈕關閉?如何知道窗口是否被「x」按鈕關閉?
7
A
回答
11
最簡單的方法(在我看來)是存儲一個布爾值,指示用戶是否通過另一種方法關閉了表單。
然後在OnClosing事件中,檢查布爾值是否爲false(表示單擊了x按鈕)。
唯一的問題是你已經設置了自己的布爾值。這可能取決於用戶可以關閉表單的其他方式。
編輯:我應該指出,這是高度依賴於窗體可以被關閉的其他方式。如果你有很多方法通過調用Window.Close()來關閉這個窗口,我會考慮創建一個名爲UserClose()的方法,它爲你做布爾設置。
public void UserClose()
{
NonXClose = true;
this.Close();
}
這將允許外部代碼關閉窗口,並設置布爾值。
3
所不同的是以下內容:
window.close()的導致WM_CLOSE被髮送到窗口。
Alt + F4和X按鈕導致WM_SYSCOMMAND消息與SC_CLOSE類型。您可以決定是否希望進一步路由此消息(並最終導致WM_CLOSE)。
相關問題
- 1. 用窗口'X'按鈕關閉窗體
- 2. 如何綁定到窗口的關閉按鈕X按鈕
- 3. 如何知道一個窗口是否可以用js關閉
- 4. 我如何知道NSWindow是使用關閉按鈕關閉的?
- 5. 主WPF窗口如何知道次WPF窗口何時關閉
- 6. HTML按鈕關閉窗口
- 7. javascript:父窗口如何知道其子窗口關閉?
- 8. 如何禁用Windows上的Perl/Tk窗口關閉('X')按鈕
- 9. 關閉窗口按鈕gtk_widget_set_sensitive按鈕
- 10. 如何知道DOM是否關閉?
- 11. 如何知道流是否關閉?
- 12. 如何知道JDialog是否關閉?
- 13. 如何知道按鈕是否被按下或釋放?
- 14. 如何通過點擊關閉按鈕關閉彈出窗口?
- 15. 如何在對話框窗口中關閉關閉按鈕?
- 16. 如何知道Xul窗口是否被最小化?
- 17. 如何知道一個窗口是否被最小化?
- 18. 如何知道窗口「加載」事件是否已被觸發
- 19. 可可如何知道文件是否被編輯/關閉
- 20. 如何檢查窗口按鈕是否被按下C++
- 21. 如何知道ActiveX(COM)控件的IE選項卡(窗口)是否關閉?
- 22. 我怎麼知道瀏覽器的(X)關閉按鈕被點擊?
- 23. 如何知道BootStrap單選按鈕是否被選中?
- 24. 如何知道按鈕是否被點擊android
- 25. iOS如何知道html5按鈕是否被點擊加載UIWebView
- 26. 如何知道窗口是子窗口還是父窗口?
- 27. 修改highslide彈出窗口的「X」關閉按鈕
- 28. 使用MVVM燈以'X'按鈕關閉窗口時的確認
- 29. 在dojo對話框中缺少[X]按鈕以關閉窗口
- 30. Errorprovider在使用窗口關閉按鈕(X)時顯示錯誤
你能澄清嗎?您是否想區分按下「X」按鈕和其他關閉窗口的方式(即鍵盤)?或者關閉窗戶的任何方法? – 2009-12-08 12:06:44
區分按下「X」按鈕和關閉窗口的其他方式(即鍵盤) – Vytas999 2009-12-08 13:26:05
我認爲如果您解釋爲什麼要這樣做會有所幫助。對用戶來說,它是否由X或菜單項關閉應該沒有關係。也許那麼我們可以幫助你實現你真正想做的事情 – 2009-12-08 14:50:26