Зайдя немного дальше, чем размещение пользовательских элементов управления WinForms в моем приложении WPF, я фактически размещаю формы Delphi, то есть окна верхнего уровня. Я делаю это с помощью вуду в сообщении блога Как размещать HWND верхнего уровня в WPF.
Почти все работает идеально. Я отправляю COM-серверу, встроенному в Delphi, строку пути к меню, и он отправляет обратно дескриптор окна, который я передаю элементу управления хостом, описанному в блоге. Окно Delphi принимает почти все события (вернее, сообщения Windows) корректно, без какого-либо вмешательства с моей стороны.
Единственная проблема - кнопки. Они получают событие/сообщение щелчка нормально и работают, но теперь ребята из Delphi добавили к кнопкам новые значки, и у каждой кнопки есть активный значок, значок наведения и значок щелчка. Они не получают ни одного из сообщений, которые должны изменить эти значки. Почему почти все сообщения работают, кроме этих? Что я могу прочитать и или сделать, чтобы попытаться исправить это?