WinForm フォーム間の値の渡し方
WinFormsでは、以下の方法を使用してフォーム間で値を渡すことができます:
- コンストラクタ引数渡し:ターゲットウインドウのコンストラクタに引数を実装して渡した値を受信し、そのウインドウを呼び出す際に対応する値を渡す方法。例:
public class TargetForm : Form
{
public TargetForm(string value)
{
InitializeComponent();
// 使用传递的值
label1.Text = value;
}
}
// 在调用TargetForm时传递值
string value = "Hello World";
TargetForm form = new TargetForm(value);
form.Show();
- パブリックプロパティの継承: 目標ウィンドウにパブリックプロパティを定義し、このプロパティを使用して値を渡します。たとえば、
public class TargetForm : Form
{
public string Value { get; set; }
// 在需要使用传递的值的地方使用该属性
public void SomeMethod()
{
label1.Text = Value;
}
}
// 在调用TargetForm时设置属性值
string value = "Hello World";
TargetForm form = new TargetForm();
form.Value = value;
form.Show();
- Static 変数の受け渡し:Static 変数を定義し、ソースフォームでその値を設定し、ターゲットフォームでその Static 変数にアクセスします。例えば:
public class SourceForm : Form
{
public static string Value { get; set; }
private void Button1_Click(object sender, EventArgs e)
{
Value = "Hello World";
TargetForm form = new TargetForm();
form.Show();
}
}
public class TargetForm : Form
{
private void SomeMethod()
{
// 使用静态变量的值
label1.Text = SourceForm.Value;
}
}
方法によりウィンドウ間で値の受け渡しができます。どの方法を選択するかは、ニーズと設計により異なります。