关闭

VB.net 使用变量代替控件名

标签: vb.net控件Controlssender.name变量
1230人阅读 评论(0) 收藏 举报
分类:
VB.net 使用变量代替控件名
     我们在VB.net中进行程序设计的时候,会碰见需要控制多个同种类型控件的情况,例如下图有12个相同类型的group控件,里面又包含多个子控件。由于这些控件具有相同的功能,所以在程序写法上也趋于一致。但是,按照常规的设计方法,由于有8个button控件,那么我们就需要写8个button_click事件函数,这个我们的程序设计,带来了极大的不便。
图片
    既然,这些控件具有相同的功能,而且程序的写法上也趋于一直,我们有理由相信VB.net会给我们提供一个非常完美的解决方法,让我慢慢道来。
    1、将8个
button_click事件合为1个事件函数
    我们首先将8个button控件进行命名,分别为
butPort1_Update、butPort2_Update至butPort8_Update,双击其中1个button控件,进行如下修改,这样变将8个button控件的click事件函数合成了1个控件事件函数。
图片
    
    2、对产生click事件的控件进行区分

    当我们把这些事件写在一起的时候,接着面临的问题就是区分由于哪个控件发生了click事件,而调用此函数,我们可以借助sender.name来解决。
    Dim iPort As Int16 = Mid(sender.name, 8, 1)

    3、用变量代替控件名
    其它的控件如何操作呢?我们现在可以采取变量代替控件名的方法来具体实现,VB.net提供了Controls方法,通过它可以遍历当前窗体中所有的控件,但这个方法与原先的VB有区别,现在VB.net里面采用层次化的方法予以实现,就是说我们不能直接使用me.controls("")找到我们希望替代的控件,而必须要找到它的上一层父控件。说的直白一点,下图中有1个group控件,里面包含12个子控件,我们要访问这12个子控件,要用到的是它的父控件那个group控件,而不是我们的窗体。
图片
    程序实现:
    a、给
8个gruop控件的父控件命名为tabPort;
    b、给8个gruop控件命名,分别为gupPort1、gupPort2至gupPort8; 
    c、给里面的子控件命名,本文仅以后三个控件为例,分别为
txtPortX_Baud、txtPortX_StopBit、txtPortX_ParityBit,其中X表示1-8;
    程序如下:
图片 
 
    这样,我们就可以在后面的程序中,通过使用
txtPort_Baud、txtPort_StopBit、txtPort_ParityBit变量来操纵相应的控件了。

原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163 

1
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

VB.NET 几种命名方法总结 章鱼哥出品

一个好的命名规范可以大大改善代码的可读性和可维护性。好的编程习惯是从刚开始就养成的,很多刚学编程的同学可能感觉繁琐的命名没有必要,只要程序能够达到指定功能就可以了,其实不然,大家一定要从刚开始就关注这...
  • zhangyubishoulin
  • zhangyubishoulin
  • 2014-12-20 23:15
  • 1450

【VB.net】DataGridView控件的使用

VS中的DataGridView控件,在机房重构里的出镜率还是很高哒~这篇博客就把一些有关DataGridView 控件的一些使用细节和大家分享一下!   找到控件:
  • W15732624773
  • W15732624773
  • 2016-05-22 19:28
  • 3745

vb.net中Winsock控件的使用

vb.net中Winsock控件的使用(转载) vb.net中Winsock控件的使用 以前我们在VB6.0中使用Winsock控件用于网络信息交流,现在转入VB.net 常使用Socket来...
  • zwxue
  • zwxue
  • 2014-11-05 23:34
  • 3898

PropertyGrid控件在VB.net下使用的例子

PropertyGrid 更改属性的显示方式 要更改某些属性的显示方式,您可以对这些属性应用不同的特性。特性是用于为类型、字段、方法和属性等编程元素添加批注的声明标记,在运行时可以使用反射...
  • angxiao
  • angxiao
  • 2012-07-20 17:51
  • 1602

vb.net中serialport控件的一些使用经验

一些需要注意的地方 Serialport 的datareceived事件是串口接收到不大于SerialPort1.ReceivedBytesThreshold个字节的时候触发,但是具体多...
  • avatar1912
  • avatar1912
  • 2012-02-29 11:44
  • 7410

VB.Net中用户控件的使用

机房重构中有这样
  • u013035924
  • u013035924
  • 2015-06-14 19:08
  • 2146

VB.NET 章鱼哥出品--入门基础Button控件的使用详解(一)

全网最全的Button控件详解!!!Button 按钮是VB.NET 中最基础,也是最常用的控件,不管你是初学者还是大牛。每个程序中必然少不了Button按钮。但是Button控件有很多用法很多大牛却...
  • zhangyubishoulin
  • zhangyubishoulin
  • 2014-11-06 16:29
  • 2858

vb.net入门:TreeView控件的使用

一、TreeView 控件的一些常用属性: 1、CheckBoxes 属性:指示是否在树视图控件中的树节点旁显示复选框。 2、FullRowSelect 属性:当FullRowSelect 为 t...
  • w1p000
  • w1p000
  • 2012-05-13 00:34
  • 1608

vb.net中serialport控件的一些使用经验 .

一些需要注意的地方 Serialport 的datareceived事件是串口接收到不大于SerialPort1.ReceivedBytesThreshold个字节的时候触发,但是具体多少个不确定...
  • gjj202008
  • gjj202008
  • 2012-03-08 16:00
  • 942

VB.net chart 控件使用

1. import namespace     Imports System.Windows.Forms.DataVisualization.Charting     找个namespace包含用于图...
  • weihao55555
  • weihao55555
  • 2017-04-19 22:42
  • 1308
    个人资料
    • 访问:193741次
    • 积分:3850
    • 等级:
    • 排名:第9577名
    • 原创:183篇
    • 转载:11篇
    • 译文:2篇
    • 评论:17条
    文章分类
    最新评论