溫馨提示×

winform窗體傳值的方式有哪些

小億
116
2023-09-09 12:06:44
欄目: 智能運維

在Winform窗體中,可以使用以下幾種方式進行窗體之間的值傳遞:

  1. 構(gòu)造函數(shù)傳值:在窗體的構(gòu)造函數(shù)中,添加參數(shù)用于接收傳遞的值,并在創(chuàng)建窗體實例時傳遞參數(shù)。

例如:

public Form2(string value)
{
InitializeComponent();
this.value = value;
}

創(chuàng)建窗體實例時傳遞值:

Form2 form2 = new Form2("傳遞的值");
form2.Show();
  1. 公共屬性傳值:在窗體類中定義公共屬性,用于接收傳遞的值,通過屬性進行值的傳遞。

例如:

public partial class Form2 : Form
{
public string Value { get; set; }
// 在需要的地方使用Value屬性獲取傳遞的值
}

傳遞值:

Form2 form2 = new Form2();
form2.Value = "傳遞的值";
form2.Show();
  1. 靜態(tài)變量傳值:在窗體類中定義靜態(tài)變量,用于存儲傳遞的值,其他窗體可以直接訪問該變量。

例如:

public partial class Form2 : Form
{
public static string value;
// 在需要的地方使用value變量獲取傳遞的值
}

傳遞值:

Form2.value = "傳遞的值";
Form2 form2 = new Form2();
form2.Show();
  1. 事件傳值:在窗體中定義事件,其他窗體訂閱該事件,并在事件處理方法中獲取傳遞的值。

例如:

public partial class Form2 : Form
{
public event Action<string> ValueChanged;
private void button1_Click(object sender, EventArgs e)
{
ValueChanged?.Invoke("傳遞的值");
}
}

其他窗體訂閱事件:

Form2 form2 = new Form2();
form2.ValueChanged += Form2_ValueChanged;
private void Form2_ValueChanged(string value)
{
// 獲取傳遞的值
}

以上是常用的幾種窗體傳值的方式,可以根據(jù)具體需求選擇合適的方式進行傳值。

0