Dave-10169531 Ответов: 1

Как я могу сделать форму в одном проекте ребенком в другом


Я разработал модуль отчетности с формой запуска в отдельном проекте в vb.net. С тех пор я создал новый vb.net win form project с midi-родителем. Я хотел бы вызвать существующую программу отчетов и открыть ее как ребенка для непарента.

В VB6 у меня были подпрограммы, которые позволяли мне установить родительский атрибут в форме в отдельном проекте.

Есть ли что-то подобное в vb.net-что?

Что я уже пробовал:

В коде VB6 у меня есть;
Public Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long


рутина
Public Function fun_ParentHwnd(Optional nHwnd As Long, Optional bClear As Boolean) As Long


    Dim n   As Long
    
    'Read registry setting for ParentHwnd from Parent form

    n = GetCUSetting("", "ParentHwnd", 0)

    fun_ParentHwnd = n
        
End Function
Sub MakeMeChild(nHwnd As Long)

    Dim nRet    As Long
    
    UBhWnd = fun_ParentHwnd
    
    nRet = SetParent(nHwnd, UBhWnd)
    
    UBhWnd = ubHandle

End Sub

1 Ответов

Рейтинг:
4

Gerry Schmitz

Вы можете добавить "ссылку" в свой текущий проект к "другому" проекту; просто ссылайтесь на файл .exe или dll (если это библиотека классов).

(Да; файл .exe можно получить так же, как и файл .dll, если доступная форма / окно / класс является общедоступной).