- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Visual Studio中没有控件数组处理方法探讨
Visual Studio中没有控件数组处理方法探讨
摘 要 在Visual Studio 2005之后的版本已经没有控件数组了,那么原先用控件数组所完成的操作,在升级后的版本中又如何实现的呢,本文主要讲解在Visual Studio没有控件数组的处理方法。
【关键词】控件数组 事件处理函数 动态添加控件
在Visual Studio 6.0的时代,控件数组是管理窗体上控件的最佳方式,但是在Visual Studio 2005之后的版本已经没有控件数组了。那如何在Visual Studio 2005之后的版本来完成过去通过控件数组所完成的操作呢?
1 事件处理函数
控件数组允许定义一组事件程序来让控件数组中的所有控件共享,在Visual Studio 2005之后版本的“事件处理函数”使我们不需要使用控件数组就能让一组控件共享事件程序。一个典型的事件处理函数如下所示:
this.txtName.Enter += new System.EventHandler(this.ProcessEnter);
private void ProcessEnter(object sender, System.EventArgs e)
{ // ...}
此事件处理函数会负责处理名称为txtName的文本框的Enter事件。ProcessEnter事件处理函数会自动处理名称为txtName的文本框的Enter事件,也就是当名称为txtName的文本框的Enter事件被触发时将会执行事件处理函数ProcessEnter。如果其它文本框想要共享ProcessEnter事件,只需要添加所要处理的其他事件即可,如:
this.txtName.Enter += new System.EventHandler(this.ProcessEnter);
this.txtPwd.Enter += new System.EventHandler(this.ProcessEnter);
private void ProcessEnter(object sender, System.EventArgs e)
{// ...}
这样,ProcessEnter事件处理函数将会处理txtName和txtPwd两个文本框的Enter事件。
借助于System.EventHandler语句,.NET允许不同类型控件的不同事件共享事件处理函数,所以我们能够让所有的文本框及任何其他的.NET控件去共享同一个事件处理函数,例如:
this.txtName.Enter += new System.EventHandler(this.ProcessEnter);
this.txtPwd.Enter += new System.EventHandler(this.ProcessEnter);
this.mtxtNum.Enter += new System.EventHandler(this.ProcessEnter);
this.btnOk.Enter += new System.EventHandler(this.ProcessEnter);
private void ProcessEnter(object sender, System.EventArgs e)
{// ...}
这样,ProcessEnter事件处理函数将会处理两个文本框、一个屏蔽输入控件和一个按钮的Enter事件。
事件处理函数中的两个参数,第一个参数object sender是事件源,表示触发事件的那个组件,比如说你按下按钮,那么sender就是按钮。它返回的是一个泛型传送对象,以便让相同的事件处理函数可以被不同类型的控件使用。要访问传送对象,必须将传送对象从对象类型转换成特定的控件类型,例如:
this.txtName.Enter += new System.EventHandler(this.ProcessEnter);
this.txtPwd.Enter += new System.EventHandler(this.ProcessEnter);
private void ProcessEnter(object sender, System.EventArgs e)
{((TextBox)(sender)).ForeColor = Color.Blue;}
事件处理的第二个参数System.EventArgs e事件参数,它包含了事件所携带的信息,用来辅助你处理事件, 比如说你用鼠标点击窗体,那么EventArgs是会包含点击的位置e.X,
您可能关注的文档
- TRIZ冲突解决原理在汽车振动模拟试验中应用.doc
- TRIZ创新原理在建筑造型教学中应用.doc
- TRIZ创新理论在光电效应实验仪改进中应用.doc
- TRIZ创新理论在泥浆门密封改进设计中应用.doc
- TRIZ原理在移动蓄热车产品开发中应用.doc
- TRIZ在交流电焊机节能技术创新中应用.doc
- TRIZ在解决电机线圈端部漏电问题中应用.doc
- TRIZ在高职数据库应用技术教学中应用.doc
- TRIZ方法在解决铸型刮砂成型过程中型砂坍塌问题中应用.doc
- TRIZ理论与大学生创新型人才培养.doc
- VisualBasic程序设计课程教学中应强化四个方面.doc
- VisualBasic驱动SolidEdge二维制图方法.doc
- Visualfoxpro课程整体设计实践与探索.doc
- VISUM仿真软件在地铁运营管理专业实验实践中应用.doc
- Vitalstim吞咽障碍治疗仪早期介入手足口病合并吞咽功能障碍疗效分析.doc
- Vitapex糊剂一次性根充治疗乳牙慢性根尖周炎临床观察.doc
- Vitapex派丽奥联合治疗根尖周炎临床分析.doc
- Vitapex糊剂在有瘘型慢性根尖周炎应用.doc
- Vitapex糊剂治疗乳牙根尖周炎疗效观察.doc
- VIVACE电子可变声场系统及在大连国际会议中心剧场应用.doc
文档评论(0)