Как я могу показать форму в качестве дочернего элемента окна, которого нет в моей программе?
У меня есть дескриптор окна того, кто должен быть родителем, но я не вижу какого-либо управляемого метода для SetParent () в форме. Есть один? Также кажется, что метод form.Show()
принимает только управляемые объекты, реализующие IWin32Window.
Если не существует управляемого метода, каков предпочтительный метод объявления API для максимальной совместимости с будущими системами? Как это?:
<DllImport("user32.dll")> _
Private Shared Function SetParent(hWndChild As IntPtr, hWndNewParent As IntPtr) As IntPtr
End Function
Можно ли построить класс, который реализует IWin32Window и каким-то образом оборачивает окно? Было бы удобно сделать что-то подобное, но я не знаком с IWin32Window:
frmMyForm.Show(New NativeWindowWrapper(12345)) 'Where 12345 is the hWnd of the window I want to wrap