'× Form1.ShowDialog() '○ Dim InstForm1 As New Form1 InstForm1.ShowDialog()
Public Class Form1 Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load Dim InstForm2 As New Form2 Dim InstForm3 As New Form3 'ここでForm3がForm2でも操作できるようインスタンスを渡します InstForm2.Show(InstForm3) InstForm3.Show() End Sub End Class
Public Class Form2 'Form1にあるInstForm3のコピーを格納する Private InstForm3 As Form3 Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) _ Handles Button1.Click Me.InstForm3.Close() End Sub 'Form2から操作できるようForm3のインスタンスが渡されます。 Public Overloads Sub Show(ByVal Form3 As Form3) Me.InstForm3 = Form3 '自分(Form2)を表示します Me.Show() End Sub End Class