Относительно пустого заголовка - это потому, что имя окна HwndSource
не имеет никакого отношения к заголовку окна. Окно HwndSource
, которое создает код выше, является дочерним элементом окна, представленного InParentWindowHandle
. Именно это окно, чей текст используется для строки заголовка. Вы должны вызвать SetWindowText()
, используя этот HWND
, чтобы установить заголовок окна.
Что касается проблемы с набором текста, вы уверены, что вам нужно добавить хук? Я только создал небольшие тестовые приложения с интеграцией WPF / Win32, но я не помню, чтобы мне приходилось делать что-то особенное, чтобы гарантировать, что элементы управления WPF получили весь ввод с клавиатуры.