タイトルがすべてを物語っていますが、基本的に私はメインの親ウィンドウを持っており、それが時折子ウィンドウを開きます。現在、Windows 7 のタスクバーから子ウィンドウの 1 つを選択することができ、そのウィンドウのみが最前面に表示されます。親ウィンドウをこのコマンドにリンクする方法を見つけて、子ウィンドウが選択されるたびに親も自動的に前面に表示されるようにしたいと思います。
子ウィンドウの 'GotFocus BringIntoView()' メソッド内からFocus()
とTopmost = true
コマンドの両方を使用しようとしましたが、やはりうまくいきません。event handler, but neither seemed to make a difference. I also tried the
誰かがこれを前に見たことがありますか、これを実装する方法を知っていますか?
これは私がこれまでに試したことです。最初に子ウィンドウを設定してからすぐに子ウィンドウを設定するロジックはmainWindow
、子ウィンドウにまだフォーカスを持たせたいが、mainWindow
実行中の他のプログラム (つまり、Excel、VS など) の上に置きたいということです。
private void Window_GotFocus(object sender, RoutedEventArgs e)
{
var mainWindow = Application.Current.Windows.Cast<Window>().FirstOrDefault(window => window is MainWindow) as MainWindow;
mainWindow.Topmost = true;
this.Topmost = true;
}