C#/WPF - RoutedEvent в классе WPF, который не является UIElement
У меня есть класс, который должен уведомить, что произошло что-то значительное. Класс находится в WPF-проекте, даже если этот конкретный класс не выглядит (и не наследуется от UIElement
ни прямо, ни косвенно).
Обычно я просто регистрирую RoutedEvent
чтобы получить эту функциональность, но так как этот класс не имеет ни AddHandler, ни RemoveHandler, я не могу заставить его работать. Кто-нибудь знает другой способ получить RoutedEvent
поведение?
1 ответ
Насколько я знаю, если ваш класс не UIElement
, он не может быть частью визуального дерева, и если он не является частью визуального дерева, вы не можете выбросить RoutedEvent
s. Они являются строго концепцией пользовательского интерфейса.
Я думаю, что рекомендуемый подход будет либо сделать ваш класс наследовать от UIElement
или, если это невозможно / желательно, создайте аналог для вашего класса, который наследуется от UIElement
и используйте этот второй класс в визуальном дереве, где вы обычно размещаете свой исходный класс.