私は Win Form アプリケーションを使用しています。ドキュメントのどこかで、wpf で記述されたこのダイアログを呼び出す必要があり、window.owner を設定したいと考えています。アプリケーションのメイン ウィンドウを取得するために見つけた唯一のものは次のとおりです。
Window.Owner を Process.GetCurrentProcess().MainWindowHandle で設定したいのですが、ウィンドウ ハンドルをウィンドウにキャストする方法がわかりません。
私は Win Form アプリケーションを使用しています。ドキュメントのどこかで、wpf で記述されたこのダイアログを呼び出す必要があり、window.owner を設定したいと考えています。アプリケーションのメイン ウィンドウを取得するために見つけた唯一のものは次のとおりです。
Window.Owner を Process.GetCurrentProcess().MainWindowHandle で設定したいのですが、ウィンドウ ハンドルをウィンドウにキャストする方法がわかりません。
WindowInteropHelperクラスを使用すると、HWND を (として) 使用して WPF ウィンドウの所有者を設定できますIntPtr
。
あなたの場合、それは次のようになります。
WindowInteropHelper wih = new WindowInteropHelper(theWpfWindow);
wih.Owner = Process.GetCurrentProcess().MainWindowHandle;
theWpfWindow.ShowDialog();