Большинство элементов WPF не создают HWND, поэтому это обычно применяется только к элементам верхнего уровня, таким как Window.Вы можете использовать HwndSource.FromHwnd , чтобы получить PresentationSource, а затем использовать свойство RootVisual , чтобы получить корень визуального дерева:
var rootVisual = HwndSource.FromHwnd(hWnd).RootVisual;
Также см. Обзор взаимодействия WPF и Win32 для получения более подробной информации о том, как WPF использует HWND:
Все элементы WPF на экране в конечном итоге поддерживаются HWND.Когда вы создаете окно WPF, WPF создает HWND верхнего уровня и использует HwndSource для помещения окна и его содержимого WPF внутрь HWND.Остальная часть вашего WPF-контента в приложении делится этим единичным HWND.Исключением являются меню, выпадающие списки и другие всплывающие окна.Эти элементы создают свое собственное окно верхнего уровня, поэтому меню WPF потенциально может выходить за границы окна HWND, в котором оно находится.Когда вы используете HwndHost для размещения HWND внутри WPF, WPF сообщает Win32, как расположить новый дочерний HWND относительно HWND окна WPF.