1

我有一个班级需要通知发生了重要的事情。该类位于 WPF 项目中,即使这个特定的类是无外观的(并且不UIElement直接或间接地从 继承)。

通常,我只是注册一个RoutedEvent来获得这个功能,但由于这个类既没有 AddHandler 也没有 RemoveHandler,我无法让它工作。任何人都知道另一种获得RoutedEvent行为的方式?

4

1 回答 1

0

据我所知,如果你的类不是 a UIElement,它就不能成为可视树的一部分,如果它不是可视树的一部分,你就不能抛出RoutedEvents。它们是严格的 UI 概念。

我认为推荐的方法是让你的类继承自UIElement,或者如果这不可能/不希望,为你的类创建一个对应的类,它继承自UIElement并使用你通常放置原始类的可视化树中的第二个类.

于 2010-03-29T11:59:13.000 回答