2012-08-04 62 views
1

我已經將WindowLoaded事件添加爲構造函數中的路由事件處理程序,但不確定這是否是聲明/起訴窗口加載的正確方法。WPF中的WindowLoaded事件

this.AddHandler(Window.LoadedEvent, new RoutedEventHandler(WindowLoaded)); 

目前似乎工作,因爲我只要一運行該應用程序我得到邊框的空窗不只是它的內容。

問題是,如何在WPF中使用WindowLoaded()事件?我期待從VS2010中的頂部下拉框中選擇它,但我想必須手動輸入它。是對的嗎?

乾杯, 阿米特

+1

沒有名爲「WindowLoaded」或「LoadedEvent」的事件。只有Loaded。 – 2012-08-04 18:29:19

回答

1

您可以按照Mark的建議,或者,您可以將加載的事件添加到您的MainWindow.xaml(Visual Studio將生成請按照加載屬性中的ctrl +空格爲您處理該處理程序):

<Window x:Class="StackOverflowWPF.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     Loaded="MainWindow_Loaded"> 
    <!-- your code --> 
</Window> 
3

您既可以在GUI設置Loaded事件:

enter image description here

或控制的代碼隱藏:

public MainWindow() 
{ 
    InitializeComponent(); 
    Loaded += MainWindow_Loaded; 
} 

void MainWindow_Loaded(object sender, RoutedEventArgs e) 
{ 

} 
+0

有趣的是,我的屬性窗口不顯示您的圖像!它只顯示屬性選項卡,並且只有幾個屬性。 – 2012-08-06 20:23:19

+1

在Visual Studio 2015中,對於我來說,禮貌窗口在名稱字段旁邊有一個扳手圖標和一個閃電圖標(沒有上面顯示的「屬性」或「事件」字樣)。我花了一秒鐘才注意到;以防止有人幫助。 – logicbird 2016-10-01 10:09:59