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

本文介绍了一种在C#应用程序中实现窗体间数据传递的方法。通过创建自定义属性和利用对话框结果,实现了从form1到form2的数据传递,并能将数据返回给form1。文中详细展示了如何设置窗体元素、编写事件处理程序以及实现数据同步。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值