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);
        }

  

 

posted on 2015-02-02 11:29  冬夜冷雨  阅读(250)  评论(0编辑  收藏  举报

导航