2016-05-13 100 views
0

我正在開發一個應用程序,並且爲了應用程序的自定義目的,我需要一個自定義的MessageBox防止自定義消息對話框(模態對話框)焦點丟失WPF

我創建了一個新的WPF Window,我想強制用戶在返回到應用程序之前與自定義消息框進行交互,從而阻止他們使用應用程序,直到自定義消息框中的按鈕按下。

我試過使用.Focus(),但它根本不起作用。

舉一個很好的例子正是我想要的:

在Outlook中嘗試按「另存爲」,然後再次單擊「郵件」窗口。
您會立即將「重定向到」「另存爲」對話框,並且在關閉對話框之前無法在主窗口上執行任何操作。

任何想法如何使這成爲可能?

+5

您是否通過ShowDialog調用顯示自定義消息框?如果沒有 - 使用它而不是顯示。 – Evk

+0

當然,如果我理解了這個問題,你想使它成爲自定義的'MessageBox'模式對話框,對吧?你可以將這個問題改爲如何創建一個模式窗口 – afaolek

+2

請參閱[this](http://stackoverflow.com/questions/499294/how-do-make-modal-dialog-in-wpf) – afaolek

回答

4

基本上,你希望你的新Window是模態。在WPF中執行此操作的方法是調用ShowDialog方法,而不僅僅調用Show

+0

就這樣,是吧?這是我所期望的更容易的方式。這工作正常,它解決了問題,謝謝! :) – DethoRhyne

+0

@DethoRhyne不用客氣,當你知道該找什麼時更容易!不要忘記標記你的問題已解決 –

+0

的確如此。當然,由於時間限制,我當時不可能,但現在我做了! – DethoRhyne