【c#】別のフォームのプロパティを参照する方法【vb.net】

別フォームのプロパティを参照する方法を紹介します。

以下サンプルです。
Form2から、Form1のテキストボックスの値を取得します。

サンプルのイメージ

1.Form1にコントロールの値を返すプロパティを定義します。

public string Form1_Text
{
get { return textBox1.Text; }
set { textBox1.Text = value; }
}
Public Property Form1_Text() As String
    Get
        Return TextBox1.Text
    End Get
    Set(ByVal value As String)
        TextBox1.Text = value
    End Set
End Property

2.Form1からForm2画面を開くときに、下記のようにOwnerプロパティに”this”を設定します (Form1への記述です) 。

Form2 form2 = new Form2();
form2.Owner = this;
form2.ShowDialog();
Dim from2 As Form2 = New Form2()
Form2.Owner = Me
Form2.ShowDialog()

3.Form2に対し、1で定義したForm1のプロパティを呼び出す処理を記述します。this.Ownerプロパティを使用します。

((Form1)this.Owner).Form1_Text;
CType(Me.Owner, Form1).Form1_Text
タイトルとURLをコピーしました