WinForm 两窗体之间传值实例

2010-12-27 22:10:11|  分类: 学业|举报|字号 订阅

 
 

窗体Form1和Form2 Form2由Form1打开(1、模式窗体 2、非模式)

Form2的TextBox值传回Form1的TextBox中

Form1:      
 public partial class Form1 : Form      
   {      
       public Form1()      
       {      
           InitializeComponent();      
       }      
     
       private void button1_Click(object sender, EventArgs e)      
       {      
           Form2 frm = new Form2(this,textBox1.Text);//带参数构造Form2(此方法该处带俩参数构造多余)      
            
           if (frm.ShowDialog() == DialogResult.OK)      
           {      
               this.textBox1.Text += frm.ReturnText;//通过Form2的属性获得回传值      
           }      
           frm = null;      
                 
       }      
             
   Form2:      
    public partial class Form2 : Form      
   {      
       private Form1 pfrm;      
       private string frm1txt;      
       public Form2(Form1 parentfrm,string frm1text)      
       {      
           InitializeComponent();      
           pfrm = parentfrm;      
           frm1txt = frm1text;      
       }      
              public string ReturnText//回传值的属性      
       {      
           get { return this.frm1txt; }      
       }      
         private void button2_Click(object sender, EventArgs e)//给属性赋值并关闭模式窗体Form2      
       {      
           frm1txt = this.textBox2.Text;      
           this.DialogResult = DialogResult.OK;//*必加 模式窗体打开后 只有DialogResult初始化后才可继续操作 否则值无法传回      
           this.Close();//模式窗体关闭.close()相当于将窗体隐藏 彻底关闭需要用.Dispose()      
       }      
     
       private void button3_Click(object sender, EventArgs e)//关闭      
       {      
           this.DialogResult = DialogResult.Cancel;//同*      
           this.Close();      
       }

两个窗体间传值主要是通过构造函数来实现的,构造函数带参数来实现参数值传递到另一个窗体中去

最新文章

  1. CPU中断和轮询
  2. nginx、Apache、IIS服务器解决 413 Request Entity Too Large问题方法汇总
  3. hdu 5366 组合数 *
  4. Netty5-应答服务器
  5. 黑客讲述渗透Hacking Team全过程(详细解说)
  6. sap 中怎样把非限制库存转为销售订单库存?
  7. SPOJ 227 Ordering the Soldiers 线段树 / 树状数组
  8. [OFBiz]开发 四
  9. c#的方法重写和的java方法重写有什么区别
  10. 复习-C语言内嵌汇编-初级(1)
  11. live555 for Android
  12. java类路径classpath和包
  13. Android官方命令深入分析之bmgr
  14. centos开启防火墙
  15. CSS 简介、 选择器、组合选择器
  16. Facebook在代码里下毒,百度身受重伤。。。
  17. UCS2编码
  18. Codeforces 545E. Paths and Trees 最短路
  19. 远程访问Centos6.5上的mysql或者mariadb(navicat)
  20. 2017-2018-1 20155305 《信息安全系统设计基础》第四周学习总结(课堂提交作业未来得及提交码云链接myod补充博客)

热门文章

  1. java8中接口default、static新特性,与抽象类区别
  2. luoguP1025+codevs 1039 数的划分 x
  3. pycharm如何添加固定代码块
  4. 从源码编译安装PCL并运行第一个小例子
  5. Shell 变量/echo命令
  6. jenkins 管理员密码重置
  7. Spring Boot教程(十五)使用Intellij中的Spring Initializr来快速构建Spring Boot/Cloud工程
  8. Floating Point Math
  9. 惠普DL360G6安装ESXi主机后设置多块网卡
  10. 【后台管理系统】—— Ant Design Pro页面相关(二)