Как добавить окно WPF к Приложению WinForms

Я создаю окно HUD для осмотра объектов бизнеса в моем приложении WinForms.

Я хотел иметь совершенно другой стиль окна (минимизируйте предметную область и показ только TitleBar, никаких системных кнопок, и т.д.), таким образом, я создал приложение WPF для этого.

Проблема состоит в том, что я хочу, чтобы это Окно 'жило' в моем приложении WinForms. Я не могу только добавить WPF как OwnedForm или установить основную Форму как Владелец окна WPF.

Так, как может achive это?

Править: Благодаря PST я нашел ответ. Вот отрывок:

System.Windows.Forms.Integration.ElementHost.EnableModelessKeyboardInterop(_inspector);
WindowInteropHelper inspectorHelper = new WindowInteropHelper(_inspector);
inspectorHelper.Owner = this.Handle;
_inspector.Show();
7
задан jpsstavares 29 June 2010 в 17:08
поделиться

1 ответ

Окно WPF имеет дескриптор / контекст окна Win32.

См. WindowInteropHelper . Вы можете использовать это с Win32 (или, возможно, есть поддержка WinForms?), Чтобы установить окно владельца окна WPF. Имейте в виду, что дескриптор не существует до события «инициализация источника» (?).

Однако, используя только WinForms, вы можете настроить панель заголовка настолько, насколько вам нужно (вы можете перезаписать сам рисунок через Win32, и я думаю, что вы потеряете все блоки управления, не заходя так далеко).

Есть много результатов Google по этой теме, если вы используете правильные ключевые слова.

6
ответ дан 7 December 2019 в 09:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: