C#的窗体间数值传递.pptVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C#的窗体间数值传递

Jene Marlin jenemarlin@ 2010-8-4 列蒙贱沮粹摈雁堆徘玛话柔瞥捏伍泡骤檬突冤杯误灵吭升蘑敬焙屿椰峦芽C#的窗体间数值传递C#的窗体间数值传递 开发C#程序,除了实现具体的功能后,我相信最多的也是程序内的数据的交流。而对于窗体间的数据的传递就是这些信息交流最简单,最基础的功能. 比如,在窗体A上有一个数值:a,要传递给窗体B,那怎么办呢?或者说要把窗体B上的某一个数值传递给窗体A,那又怎么办呢?假如你不会,那就要学习本教程了。本教程就是为了解决这个问题而写的。相信在学会后,对程序的开发速度及质量将产生积极的推动作用。 我始终坚信:会者不难,难者不会。只要你学会了,你就会感觉到原来这么的简单。 最近从网上,也找到一些这方面的内容,基本上都差不多,但是看得却是云里雾里的。所以本人决定从重整理,希望能对初学者有所帮助。当然也要感谢网友的无私共享. 镀炸镐虾门童挎龟喧宏阂婚痰器离芍皇胎呀荐贩柠卖耶屁枷功曹幢尽厄意C#的窗体间数值传递C#的窗体间数值传递 这是一个最简单的方法,相信你看过后,就能使用。 利用属性来传递数值。这种方法主要用于少量的数值传递。 比如:要把窗体A的数据传递给窗体B,那就要在窗体A中,建立一个属性。在窗体B上,要进行获取窗体上的数据,就要引用窗体上的这个属性即可。(注意:是在窗体B上,进行操作。)当然也可以反过来:在窗体B上,建立属性,在窗体A操作,来获取窗体B上的数据。 Form1中放一个Label1,一个Button1,Form1为主窗口,当点击Button1时,执行: Form2 f2 = new Form2(); f2.ShowDialog(this); Form2中放一个TextBox1,一个Button1,当点击Button1时执行: Form1 f1 = (Form1)this.Owner; f1.Label1.Text = this.TextBox1.Text; 注意:Form1中的label1要设为public 伟寅俺中闪扦翱伙角纠铆蕉咯蛰湛涂款附镑疵挫音拢砷右疏难港衍迄壕凭C#的窗体间数值传递C#的窗体间数值传递 当然你也可以根据需要来自定义属性。比如在窗体A上建立属性,并给这个属性赋值后,就能被后面所使用。 private string strValueA;//这是一个变量,在内存中分配的地址。 public string StrValueA//这是所声明的属性 { get{ return strValueA; } //当你需要这个值时,得到这个属性的值。 Set { strValueA = value;}//给这个属性赋值 } 假如在窗体B上,要得到窗体A上的那个属性时,就可以使用前面所讲的方法来传递数值。 群时待腥箕膏核温掳稳庶旭蓉媚静挫乖怀舅术潭醚荚侥掖茅飘邵码埔氖勃C#的窗体间数值传递C#的窗体间数值传递 从上面的《数值传递方法(一)》中,我们已经可以用最简单的方法来进行数据的传递。本节将在前面的利用属性传递的基础上,进行进一步的探讨。而所使用的是就是程序中最常用的方法。 其实说,利用方法来进行数值的传递,它的背后也是借住了属性传递的条件,才进行的。但是这种方法用于要进行修改或是刷新数值比较多时,才会使用。 比如:在窗体A上打开的基础上,又打开了窗体B,而在窗体B上,重新刷新窗体A上的数值,需要这样做:在窗体A上,新建一个方法,方法将对数据传递的这个过程里程操作。或者说是把数据传递这个过程写到了一个通用的方法里,所以具体还是要参考属性的数值传递。 public void Refresh_Method() { //属性数值传递 } 忧铃墩住尿躺募僻邯寞挞憨赞妥迎抗赌弱篡妇肝轻恋疮瓜呵睁荔独醒星疵C#的窗体间数值传递C#的窗体间数值传递 利用静态属性,方法,变量来进行数值的传递。 我们都 知道,静态方法或是属性,都是不需要进行实例化就能使用的。而前面介绍的都是要对对象进行实例化后才能使用的。所以说 这种更简单。 这种方法同前面的利用属性进行数值传递原理一样,但是还要简单一些。 静态属性 Public static string a//声明静态属性同正常的属性 { // } Public static void aa()//静态方法同正常的方法 { } 盟含蔬周猿斩林梳咆狡引几宙烷厢庙镜更筑弥泡逆装仑水椎层南耽而员汛C#的窗体间数值传递C#的窗体间数值传递 使用带参数的构造函数,但是这种方法也存在着不足之处,那就是只能刷新一个窗体---------子窗体的数据。对于父窗体就无能为力了。 说明:Form1为主窗体,包含控件:文本框textBoxFrm1,多选框checkBoxFrm1和按钮buttonEdit; ? Form2为子窗体,

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档