讓他們成爲單身並不是一個完全壞主意,但我個人並不喜歡這樣做。我寧願將一個引用傳遞給另一個表單。這是一個例子。
Form1觸發Form2打開。 Form2重載了構造函數,它將調用窗體作爲參數並提供對Form2成員的引用。這解決了通信問題。例如,我已經將Form1中的Label Property公開爲Form2中的Form1。
通過這種方法,您可以以不同的方式進行溝通。
Download Link for Sample Project
// 你Form1中
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 frm = new Form2(this);
frm.Show();
}
public string LabelText
{
get { return Lbl.Text; }
set { Lbl.Text = value; }
}
}
// 你的窗體2
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private Form1 mainForm = null;
public Form2(Form callingForm)
{
mainForm = callingForm as Form1;
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
this.mainForm.LabelText = txtMessage.Text;
}
}
alt text http://demo.ruchitsurati.net/files/frm1.png
個
[形式之間的相互作用 - 如何改變從另一種形式的形式的控制(https://stackoverflow.com/a/38769212/3110834) – 2017-11-04 21:13:58