モーダルWPFダイアログがメインアプリケーションウィンドウの背後に表示されることがあるアプリケーションに問題があります。これは、メインアプリケーションウィンドウでいくつかの処理を実行し、コントロールを(バインディングを介して)更新するダイアログのボタンをクリックすると発生します。バックグラウンドになると、アプリケーションの任意の場所をクリックすると、フォアグラウンドに戻ります。
var dialog = LoadDialogWindowThroughMEF();
dialog.Owner = Application.Current != null ? Application.Current.MainWindow : null;
dialog.ShowInTaskbar = false;
dialog.WindowStartupLocation = WindowStartupLocation.CenterOwner;
return dialog.ShowDialog();
上記のコードは、モーダルウィンドウを開く方法を示しています。これはめったに起こりません。
何が問題になるのか誰か知っていますか?