|
先ほどのミニマムコードの
'フォームB
Public Class FormB
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim f As New FormC
f.ShowDialog()
End Sub
End Class
'フォームC
Public Class FormC
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
FormA.TextBox1.Text = "test"
FormB.TextBox1.Text = "test"
End Sub
End Class
を
'フォームB
Public Class FormB
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim f As New FormC(Me)
f.ShowDialog()
End Sub
End Class
'フォームC
Public Class FormC
Private _formB As FormB
Public Sub New(ByVal form As FormB)
_formB = form
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
FormA.TextBox1.Text = "test"
_formB.TextBox1.Text = "test"
End Sub
End Class
というように、まさるさんに教えていただいたとおりにしてみたのですが、
コンストラクタの部分で
警告 1
デザイナで生成された型 'WindowsApplication1.FormC' の 'Public Sub New(form As FormB)' は
InitializeComponent メソッドを呼び出さなければなりません。
と警告が表示されてしまいます。
警告なので無視して実行してみるとフォームBからフォームCを表示させた時に正常にフォームCが表示されません。
ボタンもテキストボックスもない空のフォームが表示されてしまいます。
どうすればいいのでしょうか?
|