標籤:text 賦值 form 使用 initial 父視窗 nbsp new event
//首先定義兩個Form,一個為Form1,一個為Form2,其中Form1作為父視窗,Form2作為子視窗//1、父視窗傳值給子視窗 //Form1中代碼: public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Form2 lForm = new Form2();//執行個體化一個Form2視窗 lForm.String1 = "傳值給子視窗Form2成功";//設定Form2中string1的值 lForm.SetValue();//設定Form2中Label1的 lForm.ShowDialog(); } // Form2中代碼: private string string1; public string String1 { set { string1 = value; } } public void SetValue() { this.label1.Text = string1; } public Form2() { InitializeComponent(); }//2、子視窗傳回值給父視窗 // Form1中代碼: public Form1() { InitializeComponent(); } private string strValue; public string StrValue { set { strValue = value; } } private void btnShowForm2_Click(object sender, EventArgs e) { Form2 lForm = new Form2(); lForm.Owner = this;//重要的一步,主要是使Form2的Owner指標指向Form1 lForm.ShowDialog(); MessageBox.Show(strValue);//顯示返回的值 } //From2中代碼: public Form2() { InitializeComponent(); } private void btnClose_Click(object sender, EventArgs e) { Form1 lForm1 = (Form1)this.Owner;//把Form2的父視窗指標賦給lForm1 lForm1.StrValue = "子視窗Form2返回數值成功";//使用父視窗指標賦值 this.Close(); }
C#中兩個Form視窗之間的傳值(父->子)(子->父) (轉)