所以自訂對話方塊實際上也是定義一個視窗
一般來說,Dialog分為兩種,強制和非強制回應
區別 | 強制回應 | 非強制回應 |
---|---|---|
呼叫方法 | ShowDialog() | Show() |
原視窗 | 在對話框執行期間無法操作 | 仍然可以繼續操作 |
回傳時機 | 在DialogResult被設定後直接回傳,回傳後對話框自動關閉(無需另作Close) | 呼叫後直接回傳,對話框繼續運作,直到對話框被關閉 |
範例 | 存檔對話框 | 尋找對話框 |
一般常用的是強制回應的對話框,像是內建的存讀檔對話框
所謂的強制回應就是當對話框出來之後
使用者必須先針對對話框的訊息做出回應(確定或取消)
然後才會將主控權交回給原視窗
請參考在WPF中自訂強制回應對話框(Dialog Box)
而非強制回應的對話方塊其實就是視窗
唯一的差別只是這個視窗需要跟原本呼叫他的視窗作互動
所以可能需要宣告一個事件處理來達成這個互動
--
參考資料
對話方塊概觀
沒有留言:
張貼留言