【发布时间】:2011-03-26 04:17:33
【问题描述】:
要在 WPF 中实现基于选项卡的环境,我们需要将表单转换为用户控件,但是这样做时,用户控件的 Loaded 事件会被调用两次 .
在互联网上搜索时,其他人也指出了这个问题。我们如何确保加载的事件只被调用一次?因为当它被多次调用时,我们控件的初始化会发生多次。
【问题讨论】:
-
我尝试在一个空的 .NET 4.0 WPF 应用程序中重现它,并且 Loaded 事件只触发了一次。在触发 Loaded 事件之前,您是否尝试过查看调用堆栈以查看 .NET Framework 中是否发生了一些奇怪的事情?
-
将您的用户控件放在选项卡控件中,您将能够在切换选项卡时重现该问题。
-
尝试使用页面和框架。对控件进行分组要简单得多。
标签: c# wpf user-controls