0

アプリケーションが起動すると、別のスレッドからスプラッシュ画面が表示されます。ただし、起動中にエラーが発生した場合は、メッセージ ボックスが表示されます。問題は、スプラッシュの下にメッセージボックスが表示されることです。IWin32Window 所有者プロパティを使用しましたが、MessageBoxOptions.DefaultDesktopOnly プロパティを使用しようとしましたが、id は役に立ちませんでした。

どうすればこの状況を管理できますか?

PS: 目に見えないウィンドウを作成し、TopMost を設定して MessageBox を表示しようとしました。動作しませんでした。

4

1 に答える 1

2

マルチスレッドを使用して同様の状況を作成し、このコードを使用して MessageBox をウィンドウの上に保持しました。基本的に、このコードはメッセージボックスを一番上にします。

MessageBox.Show(this,
    "Your text",
    "Settings Needed",
    MessageBoxButtons.YesNo,
    MessageBoxIcon.Question,
    MessageBoxDefaultButton.Button1,
    (MessageBoxOptions)0x40000); // this is MB_TOPMOST flag
于 2014-06-03T13:37:19.407 に答える