C# 窗口传值的方法

时间:2023-03-09 03:59:54
C#  窗口传值的方法

方法一: A to B

设置FormB 为 带参数的构造函数

public Form2( object msg)
{
InitializeComponent();
}

 方法二: A to B  

定义一个public 函数

    public void Receive(string Msg)
{
txtInfo.Text = Msg;
this.Show();
}

 方法三: 两个窗口间相互传值

需要互传时 方法二可以实现 参数传递 但是不能及时更新接收窗口控件的显示,所以建议使用委托的方法。

Form1:

  private void btnShow_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.MyEvent += new Form2.MyDelegate(MyEvent);
f2.Receive(txtInfo1.Text);
}
void MyEvent(string msg)
{
txtInfo1.Text = msg;
}

Form2:

        public delegate void MyDelegate(string msg);
public event MyDelegate MyEvent; private void btnSend_Click(object sender, EventArgs e)
{
MyEvent(txtInfo.Text);
}