Пользовательский элемент управления Windows Form, размещенный в WPF - как записать событие выхода?

В моем приложении WPF я размещаю пользовательский элемент управления Windows Form вместе с другими элементами управления wpf. Мой настраиваемый пользовательский элемент управления размещен в wpf с использованием элемента управления WindowsFormsHost. Этот настраиваемый пользовательский элемент управления содержит (так сказать, родительский) другие настраиваемые элементы управления формой выигрыша (дочерние элементы управления). Дочерние элементы управления могут быть одиночными или составными.

Как я могу зафиксировать событие выхода в дочернем элементе управления, когда пользователь переходит от последнего дочернего пользовательского элемента управления в родительском пользовательском элементе управления к пользовательскому элементу управления wpf?

Согласно MSDN (http://msdn.microsoft.com/en-us/library/ms751797.aspx) событие выхода не поддерживается в следующих сценариях:

События Enter и Leave не возникают при следующих изменениях фокуса:

1. From inside to outside a WindowsFormsHost control.
2. From outside to inside a WindowsFormsHost control.
3. Outside a WindowsFormsHost control.
4. From a Windows Forms control hosted in a WindowsFormsHost control to an ElementHost control hosted inside the same WindowsFormsHost.

Сценарии 1 и 2 - это именно то, с чем я борюсь. У вас есть решение этой проблемы? Приветствуется какое-то обходное решение или что-то еще :)

Наилучшие пожелания,

ОКБ


person OKB    schedule 06.05.2010    source источник


Ответы (1)


Похоже, вы уже ответили на свой вопрос: он не поддерживается (то есть невозможно).

Вероятно, это результат разницы в хостинге окон, используемых WPF и Windows Forms - и я уверен, что платформа поддержала бы его, если бы могла.

person Jeff Wilcox    schedule 11.05.2010