WPF

2016-05-13 12 views
3

にメインウィンドウのハンドルを取得し、私はちょうどVS 2015WPF

に空のWPFアプリケーションを作成することが

public partial class MainWindow : Window 
{ 
    public MainWindow() 
    { 
     InitializeComponent(); 
     var mainWindowHandle = new WindowInteropHelper(this).Handle; 
    } 
} 

しかしmainWindowHandleは常に0であります。

いいですか?それは> 0であるべきですか?

答えて

3

あなたのウィンドウはまだ表示されていません。実際のウィンドウはまだ作成されていません。このハンドルを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; 
    } 
} 
+0

パーフェクト!それはまさに私が探していたものです:) – Bravo