c# winfrm 委托实现窗体相互传值
利用委托轻松实现,子窗体向父窗体传值。
子窗体实现代码:
//声明委托
public delegate void MyDelMsg(string msg);
//定义一个委托变量
public MyDelMsg myDelMsg;
private void button1_Click(object sender, EventArgs e)
{
if (myDelMsg!=null)
{
//调用
myDelMsg(textBox1.Text);
this.Close();
}
}
public delegate void MyDelMsg(string msg);
//定义一个委托变量
public MyDelMsg myDelMsg;
private void button1_Click(object sender, EventArgs e)
{
if (myDelMsg!=null)
{
//调用
myDelMsg(textBox1.Text);
this.Close();
}
}
父窗体调用子窗体
private void button1_Click(object sender, EventArgs e)
{
Form2 frm = new Form2(textBox1.Text);
frm.myDelMsg = new Form2.MyDelMsg(RMsg);
frm.ShowDialog();
}
private void RMsg(string msg)
{
textBox1.Text = msg;
}
{
Form2 frm = new Form2(textBox1.Text);
frm.myDelMsg = new Form2.MyDelMsg(RMsg);
frm.ShowDialog();
}
private void RMsg(string msg)
{
textBox1.Text = msg;
}
实例代码请下载