日期:2014-05-17  浏览次数:20792 次

C#窗体间的消息传输和实时响应
我在Visual Studio 2005上新建一个工程项目,该项目下有两个窗体,第一个窗体放置着文本框textbox和按钮button,另一窗体放置着文本标签label,应项目功能需要,在第一个窗体的文本框中输入任何值,点击按钮后,在另一个窗体的文本标签的内容也随之发生响应的变化,请问各位大侠,有没有更好的解决办法,指教一二,感激涕零!!!

------解决方案--------------------

 public partial class Form1 : Form   //在label的窗口定义属性字段,此属性为给label的text赋值
    {
        public Form1()
        {
            InitializeComponent();
        }
        private string para;
        public string _para
        {
            get { return para; }
            set { para = value; }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            label1.Text = para;
        }
    }


 public partial class Form2 : Form //在textbox的窗口创建form1对象以将textbox的text值赋值给from的属性字段
    {
        public Form2()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            Form1 f1 = new Form1();
            f1._para = textBox1.Text;
            f1.ShowDialog();
        }
     }


------解决方案--------------------
 Form2 form2 = new Form2();
        private void Form1_Load(object sender, EventArgs e)
        {
            form2.TopMost = true ;            
            form2.Show();           
        }

        private void button1_Click(object sender, EventArgs e)
        {
            form2.Label1.Text = textBox1.Text;//Label1设为public
        }