/ / WinForm子を持つWPF親-BringToFront()が機能しない-wpf、winforms

WinFormの子を持つWPF親 - BringToFront()が動作しない - wpf、winforms

menuItemを持つWPFアプリケーションがあります。WinFormフォームを呼び出します。 WPFウィンドウからWinFormを開くことはできますが、WPFウィンドウの背後で開きます。 WPFウィンドウの前面には移動しません。 WinFormウィンドウとうまくやり取りできます。

WinFormを起動するために使用するコードは次のとおりです。

void ManualControlInit(object sender, RoutedEventArgs e) {

// Set visual styles
System.Windows.Forms.Application.EnableVisualStyles();
System.Windows.Forms.Application.SetCompatibleTextRenderingDefault(false);

DynamixelCsDemo form = new DynamixelCsDemo();
WindowInteropHelper wih = new WindowInteropHelper(this);
wih.Owner = form.Handle;
form.Show();
form.BringToFront();
}

WinFormを開いてWPFウィンドウの上に表示するにはどうすればよいですか?

回答:

回答№1の場合は3

実装するクラスを作成する IWin32Windowから、WPFウィンドウのハンドルを返します Handle、そのクラスを form.Show().

これにより、ウィンドウが所有するフォームが設​​定されます。