我想讓消息框在所有窗口前彈出,以便用戶看到它。我有以下代碼,但它似乎把消息框放在後面。控制檯應用程序中所有窗口前的消息框?
DialogResult dlgResult = MessageBox.Show(new Form() { TopMost = true }, "Do you want to continue?", "Continue?",
MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (dlgResult == DialogResult.Yes)
{
Console.WriteLine("YES");
}
else if (dlgResult == DialogResult.No)
{
Console.WriteLine("NO");
}
上述代碼在一個線程中運行是我的問題,我將如何解決這個問題?
謝謝
[嘆息]不要。重要的是你的特定消息框可能是,這不是更重要,那麼用戶決定什麼是此刻最重要的應用程序。此外,如果用戶正在輸入電子郵件並且彈出消息框並竊取了鍵盤焦點,則用戶有50%的機會可以做出他們後悔的事。 – 2010-07-29 16:29:20
這是重點。當用戶從另一個應用程序調用它時,用戶會期望彈出消息。無論如何,謝謝你的建議。 – arbme 2010-07-29 16:33:35
使用FlashWindowEx(http://msdn.microsoft.com/en-us/library/ms679347(VS.85).aspx)而不是將消息框推到頂部並竊取鍵盤焦點。 – 2010-07-29 16:37:39