事件触发后的WPF覆盖方法

时间:2013-10-28 19:35:20

标签: wpf custom-controls override

我有一个我想要覆盖的方法 现在,我将覆盖直接放在代码隐藏中。

这是代码隐藏的一部分(但这就是你所需要的)。

public override void OnApplyTemplate()
{
    ...
    base.OnApplyTemplate();
}

protected override void OnSelectionChanged(SelectionChangedEventArgs e)
{
    base.OnSelectionChanged(e);
    ...
}

我想在OnSelectionChanged()完成后应用OnApplyTemplate()覆盖 可能吗?如果是的话,我将非常感谢您对如何实现它的帮助/解释。

感谢。

1 个答案:

答案 0 :(得分:1)

这个简单的技巧怎么样。

private bool isEverythingLoaded;

public override void OnApplyTemplate()
{
    isEverythingLoaded = true;
    ...
    base.OnApplyTemplate();
}

protected override void OnSelectionChanged(SelectionChangedEventArgs e)
{
    if(isEverythingLoaded)
    {
      base.OnSelectionChanged(e);
      ...
    }
}

鹤鹤。你怎么看待这个?

只有在加载完所有内容后才会触发SelectionChanged。