Как создать подформы в vb.net

Я хотел бы создать 2 оконные формы, используя vb.net

Первая оконная форма является основной, а вторая оконная форма предназначена для подоконных форм, и они появляются одновременно при запуске программы.

Когда я закрываю формы подокна, он не закроет мою программу, если я закрою формы главного окна, он закроет мою программу.

Как я могу это сделать ?


person Howard Teoh    schedule 01.10.2013    source источник
comment
Как только вы закроете свои дочерние формы, вам нужно снова открыть их.   -  person Mark Hall    schedule 02.10.2013


Ответы (2)


Когда вы открываете вторую форму, установите владельца родительской формы, и когда вы закроете родительскую форму, она также заставит дочернюю форму закрыться. Я считаю (по крайней мере, кажется, что это было когда-то в истории VB), что если вы скроете родителя, он также скроет дочерний элемент.

Если вы используете SHOW для отображения своей «подформы», передайте ей родительскую форму следующим образом:

Form2.show(Form1)
person Steve    schedule 01.10.2013

Если вы пытаетесь закрыть форму владельца, когда дочерняя форма закрыта, и (если владелец является начальной формой всей программы) завершить программу, то вы сначала захотите сделать то, что ответил Стив, чтобы назначить form1 в качестве владельца формы2.

Затем, чтобы дочерняя форма закрыла родительскую, используйте следующий код в событии FormClosed формы2:

Private Sub Form2_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed
    Me.Owner.Dispose()
End Sub
person SaltpeterBoom    schedule 27.06.2014