/ / WPF Parent mit WinForm Child - BringToFront () funktioniert nicht - wpf, winforms

WPF Parent mit WinForm Child - BringToFront () funktioniert nicht - wpf, winforms

Ich habe eine WPF-Anwendung mit einem menuItem, dasruft ein WinForm-Formular auf. Ich kann die WinForm über das WPF-Fenster öffnen, sie wird jedoch hinter dem WPF-Fenster geöffnet. Es wird nicht in den Vordergrund des WPF-Fensters verschoben. Ich kann gut mit dem WinForm-Fenster interagieren.

Hier ist der Code, mit dem ich WinForm starte

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();
}

Wie kann ich WinForm öffnen und über dem WPF-Fenster anzeigen lassen?

Antworten:

3 für die Antwort № 1

Erstellen Sie eine Klasse, die implementiert IWin32Window, geben Sie das Handle des WPF - Fensters von seinem zurück Handleund übergeben Sie diese Klasse an form.Show().

Dadurch wird das Formular als Eigentum des Fensters festgelegt.