利用窗体的自定义属性实现窗体传值

www.chinacs.net  2006-09-20  中文C#技术站

第1步:在解决方案上添加一个窗体Form2;并添加textBox1、textBox2、Button1,将Button1的标题设为“确定”,DialogResult属性设为“OK”;
第2步:在窗体Form2的类代码中添加两个私有字段: _username、_password,并添加两个public属性:UserName、Password;代码如下:
public partial class Form2: Form
{
       private string _username;
       private string _password;
       public string UserName
       {
           get
           {
               return _username;
           }
           set
           {
               _username=value;
           }
       }
       public string Password
       {
           get
           {
               return _password;
           }
           set
           {
               _password=value;
           }
       }
       .....
}

第3步:窗体间相互传值演示
在Form1添加一个的Botton1、一个comboBox1,在Botton1_Click函数中如下代码:
private void button1_Click(object sender,EventArgs e)
{
      Form2 myForm2 = new Form2();
      myForm2.UserName="Richard";//Form1向Form2传值!!!
      myForm2.Password="pwd1234";
      DialogResult result= myForm2.ShowDialog();
      if(result==DialogResult.OK)
      {
           comboBox1.Items.Add(myForm2.UserName);////Form2向Form1传值!!!
           comboBox2.Items.Add(myForm2.Password);
       }
}
  要充分演示上述功能,还需要对Form2的代码作如下完善:
第1,在Form2_Load中添加如下代码:
private Form2_Load(object sender,EventArgs e)
{
    textBox1.Text=_username;
    textBox2.Text=_password;
}
第2,在textBox1、textBox2的textChanged事件中添加如下代码:
private void textBox1_TextChanged(object sender,EventArgs e)
{
    this.UserName=textBox1.Text;
}
private void textBox2_TextChanged(object sender,EventArgs e)
{
    this.Password=textBox2.Text;
}

>>原作者:孟海滨   >>来源:原创 

→ 相关文章