要在WPF中实现基于选项卡的环境,我们需要将表单转换为用户控件,但是在这样做时,用户控件的Loaded事件会被调用两次。
在网上搜索的同时,其他人也指出了这个问题。如何确保只调用一次加载事件?因为当它被多次调用时,我们的控件的初始化会发生多次。
发布于 2011-03-03 20:56:05
发布于 2012-05-03 01:00:23
您的路由事件处理程序可以(而且应该)将自己从Loaded钩子中删除,这是它所做的第一件事。
public class MyClass : Window
{
public MyClass()
{
Loaded += MyLoadedRoutedEventHandler;
}
void MyLoadedRoutedEventHandler(Object sender, RoutedEventArgs e)
{
Loaded -= MyLoadedRoutedEventHandler;
/// ...
}
};发布于 2010-08-06 05:52:40
在事件中设置一个loaded标志,如果已经设置了标志,则不要做任何事情。
https://stackoverflow.com/questions/3421303
复制相似问题