WPF (MVVM) アプリケーションでモーダル ウィンドウを開くために使用Window.ShowDialog()
していますが、Windows タスクバー (Windows 7) を使用して他のウィンドウに移動できます。
これを考慮してください: アプリケーションで 3 つの非モーダル ウィンドウを開いています。現在、これらの 1 つが を使用してモーダル ウィンドウを開きますWindow.ShowDialog()
。Application.MainWindow
また、モーダル ウィンドウの所有者として設定します。これは、私が MVVM メッセージングを使用しており、新しいウィンドウを開くためのメッセージ ハンドラが に集中しているためApp.xaml.cs
です。ウィンドウはモーダルで開きます-問題はありません。ただし、Windows 7 では、タスクバーから他のアプリケーション ウィンドウに切り替えることができます。これは、モーダル ウィンドウが別のウィンドウの背後にある状況につながりますが、これは望ましくありません。
モーダルを開いている限り、他のウィンドウでは何もできませんが、開いている限り、モーダル ウィンドウが常に一番上にあると便利です。モーダルが開いているときにタスクバーの切り替えを無効にする方法はありますか? 参考までに、アプリから起動されたすべての開いているウィンドウは、タスクバーに個別のエントリとして表示されます。
前もって感謝します!