在 WPF 中获取 MainWindow 的句柄
Get handle of the MainWindow in WPF
我刚刚在 VS 2015 中创建了一个空的 WPF 应用程序。
有
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
var mainWindowHandle = new WindowInteropHelper(this).Handle;
}
}
但是 mainWindowHandle
总是 0
。
可以吗?应该是 > 0
吗?
您的 window 尚未显示。所以实际的 window 还没有被创建。尝试在 Activated
或 Loaded
事件中检查此句柄。
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Loaded += OnLoaded;
}
private void OnLoaded(object sender, RoutedEventArgs routedEventArgs)
{
var mainWindowHandle = new WindowInteropHelper(this).Handle;
}
}
我刚刚在 VS 2015 中创建了一个空的 WPF 应用程序。
有
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
var mainWindowHandle = new WindowInteropHelper(this).Handle;
}
}
但是 mainWindowHandle
总是 0
。
可以吗?应该是 > 0
吗?
您的 window 尚未显示。所以实际的 window 还没有被创建。尝试在 Activated
或 Loaded
事件中检查此句柄。
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Loaded += OnLoaded;
}
private void OnLoaded(object sender, RoutedEventArgs routedEventArgs)
{
var mainWindowHandle = new WindowInteropHelper(this).Handle;
}
}