【发布时间】:2011-07-04 07:01:05
【问题描述】:
在WinForm的控件中,有一个OnLoaded虚函数,但是WPF控件中好像没有这个。我发现这个功能在某些情况下非常有用。例如,在控件“完全”初始化后,我可以在这里做一些事情。在WPF控件中,有一个OnInitialized虚函数,但是这个函数是从InitializeComponent函数中调用的,这个函数太早了,并且不允许派生类建立。是否有任何理由不在 WPF 中提供此功能?还是我错过了什么?
【问题讨论】:
在WinForm的控件中,有一个OnLoaded虚函数,但是WPF控件中好像没有这个。我发现这个功能在某些情况下非常有用。例如,在控件“完全”初始化后,我可以在这里做一些事情。在WPF控件中,有一个OnInitialized虚函数,但是这个函数是从InitializeComponent函数中调用的,这个函数太早了,并且不允许派生类建立。是否有任何理由不在 WPF 中提供此功能?还是我错过了什么?
【问题讨论】:
您可以附加到 Window 对象的 Loaded 事件,并在事件处理程序中执行您想要执行的操作(假设您使用的是 c#):
public MyWindow() //constructor
{
this.Loaded += MyWindow_Loaded;
}
private void MyWindow_Loaded(object sender, RoutedEventArgs e)
{
// do your stuff here
}
【讨论】:
这将在元素的初始化过程之后起作用...
【讨论】:
"I could do something here after the control is "completely" initialized"