我有一个应用程序,其中在 TabControl 中有一个自定义 UserControl。每隔一段时间,整个应用程序都需要刷新它的数据。为了处理它,我在代码隐藏中执行以下操作。
public void OnDataReloaded(object a)
{
WindowManager.GraphControl = new GraphControl();
GraphTab.Content = WindowManager.GraphControl;
graphloaded = true;
}
GraphTab 是我的 TabControl 中的 TabItem 的一个实例。WindowManager 是一个静态类,它处理对当前活动用户控件的引用。在我的 UserControl 上,我添加了一个事件处理程序: KeyDown="MyGraphControl_KeyDown_1" 作为 UserControl 的属性。
在我执行上面的代码后,一切都按预期工作。我的 TabControl 加载新的 UserControl,但是不再捕获 keydown 事件。知道为什么会这样吗?
谢谢!