- 要求如下:
- 在窗體Form1、Form2中各有一個文本框、一個按鈕,現在我需要點擊Form1中的按鈕,彈出窗體Form2,然後在窗體Form2中的文本框中輸入字符串,然後點擊Form2中的按鈕,將文本框中的值傳到Form1中的文本框中。
- 【第一種方法:】
- 窗體Form2中的代碼如下:
- public delegate void SendDate(object sender);
- public SendDate sendDate;
- private void button1_Click(object sender, EventArgs e)
- {
- if (sendDate != null) {
- sendDate(rtxtValue.Text);//注意:在這裏還可以傳入一個控件,比如:sendDate(rtxtValue)
- }
- this.Close();
- }
- 窗體Form1中的代碼如下:
- private void button1_Click(object sender, EventArgs e)
- {
- Form4 f = new Form4();
- f.sendDate = new Form4.SendDate(Funcation);
- f.ShowDialog();
- }
- private void Funcation(object sender)
- {
- this.textBox1.Text = sender.ToString();
- //this.textBox1.Text=((TextBox)sender).Text;
- }
- 【第二種方法:】
- Form2:
- public delegate void SendMsg(string msg);
- private void button1_Click(object sender, EventArgs e)
- {
- Form1 f = new Form1();
- SendMsg sm = new SendMsg(f.getMsg);
- sm(textBox1.Text);
- this.Close();
- }
- Form1:
- public void getMsg(string msg)
- {
- MessageBox.Show(msg);
- }
- private void button1_Click(object sender, EventArgs e)
- {
- Form2 f = new Form2();
- f.Show();
- }
在C#中使用委託 .
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.