findWPF窗口的句柄

Windows窗体有一个属性win1.Handle,如果我记得,返回主窗口句柄的句柄?

有没有相当的方式来获得WPF窗口的句柄?

我在网上find了下面的代码,

IntPtr windowHandle = new WindowInteropHelper(Application.Current.MainWindow).Handle; 

但我不认为这会帮助我,因为我的应用程序有多个窗口。

谢谢!!

那么,而不是传递Application.Current.MainWindow ,只是传递一个引用到你想要的任何窗口: new WindowInteropHelper(this).Handle等等。

只需使用WindowsInteropHelper类的窗口即可:

 // ... Window myWindow = get your Window instance... IntPtr windowHandle = new WindowInteropHelper(myWindow).Handle; 

现在,您正在请求应用程序的主窗口,其中总会有一个窗口。 您可以在任何窗口上使用相同的技术,但是,只要它是一个System.Windows.Window派生的Window类。

您可以使用 :

 Process.GetCurrentProcess().MainWindowHandle 

如果因为某种原因需要所有应用程序Window的窗口句柄,则可以使用Application.Windows属性获取所有Windows,然后使用WindowInteropHandler获取它们的句柄, WindowInteropHandler