zoukankan      html  css  js  c++  java
  • C#控件数组批量生成控件

    在编写C#窗体应用程序的时候,有时候需要生成好多个功能相似的同一种控件(比如数字键盘按键、单选框等),这时候使用窗体编辑器,费时费力,不便于修改。因此可以采用批量生成控件的形式。

    以批量生成按钮为例

    Button[] bnt = new Button[16];
    

    使用代码批量生成。
    需要注意坐标是相对于父容器而言的,如果要在groupbox中生成,需要指定父容器(推荐)

    for(int i = 0; i < 16; i++)
    { 
        //实例化
        bnt[i] = new Button();
        //定义控件名称
        bnt[i].Name = "bntton_"+i.ToString();
        //定义text属性,可以用string数组初始化为指定值
        bnt[i].Text = i.ToString();
        //注:如果不指定父容器,则坐标是相对于主窗体的
        bnt[i].Parent = groupBox1;
        //定义坐标
        bnt[i].Location = new Point(20+(i%4)*50,20+(i/4)*50);
        //调整大小
        //bnt[i].AutoSize = true;
        bnt[i].Size = new Size(50,50);
        //批量添加事件
        bnt[i].Click+= new EventHandler( bntton_Click);
    }
    

    为他们统一编写点击事件,sender即为触发该事件的控件对象,使用类型转换为Button。
    此时如果我点击了Button_7
    则((Button)sender)等同于Button_7

    //Sender为触发对象
    private void bntton_Click(object sender, EventArgs e)
    {
        MessageBox.Show("点击了 "+((Button)sender).Name.ToString());
    }
    
    

  • 相关阅读:
    Develop an Android Application
    有效提高编程技能
    如何提高团队编程水平
    ruby测试框架
    grep:Binary file (standard input) matches
    python datetime相减
    软件开发的“三重门
    Linux高手之路SVN使用笔记
    机器io高原因排查全命令指南
    代码如写作
  • 原文地址:https://www.cnblogs.com/velscode/p/10142640.html
Copyright © 2011-2022 走看看