WPF控件:“OnLoaded”虚拟功能在哪里?

时间:2011-07-04 07:01:05

标签: wpf controls

在WinForm的控件中,有一个OnLoaded虚函数,但在WPF控件中似乎缺少这个功能。我发现这个功能在某些情况下非常有用。例如,在控件“完全”初始化后,我可以在这里做一些事情。在WPF控件中,有一个OnInitialized虚函数,但是这个函数是从InitializeComponent函数调用的,这个函数太早了,它不允许派生类设置。是否有任何理由不在WPF中使用此功能?或者我错过了什么?

2 个答案:

答案 0 :(得分:7)

您可以附加到Window对象的Loaded事件,并在事件处理程序中执行您想要执行的操作(假设您使用的是c#):

public MyWindow() //constructor
{
  this.Loaded += MyWindow_Loaded;
}

private void MyWindow_Loaded(object sender, RoutedEventArgs e)
{
  // do your stuff here
}

答案 1 :(得分:1)

您将寻找FrameworkElement.EndInit()

这将在Element ...

的初始化过程之后起作用