zoukankan      html  css  js  c++  java
  • c#winform怎样实现动态生成控件?

      Microsoft Visual Studio 2010 窗体设计中,需要什么控件就从工具箱里拖出一个控件“挂”在窗体上。其实,窗体上的控件,不但可以“拖”,还可以用代码动态生成。动态生成控件,对需要相同的大量的控件还是比较有用的。下面小编介绍一下实现的方法,希望对广大编程爱好者有所帮助,并籍以抛砖引玉。

    c#winform怎样实现动态生成控件?

    工具/原料

     
    • Microsoft Visual Studio 2010

    方法/步骤

     
    1.  

      打开Microsoft Visual Studio 2010

      新建解决方案,

      添加项目——动态生成控件

      c#winform怎样实现动态生成控件?
    2.  

      窗体布局

      把窗体设置合适的大小

      c#winform怎样实现动态生成控件?
    3.  

      确定控件的基本属性

      1、假设要添加15个button按钮;

      2、基本属性如下:

      Name:名称       myButton

      Text:显示文本   按钮(i)

      Size:大小          50*50

      Location:窗体位置

      c#winform怎样实现动态生成控件?
    4.  

      Location属性如何动态变化?(分析如图)

            假设要把15个按钮,每5个一行生成,那么就需要让Location属性动态变化?怎么办?

            经过分析,确定X的坐标为:50+i%5*100

      c#winform怎样实现动态生成控件?
      c#winform怎样实现动态生成控件?
    5.  

      Y的坐标如何动态确定?

      1、定义一个行变量;

      2、Y的坐标为:50+row*100

      3、增加判断换行条件:i % 5 == 0 && i != 0  

      c#winform怎样实现动态生成控件?
    6.  

      输入代码试试看?ok!运行效果如图

      c#winform怎样实现动态生成控件?
      c#winform怎样实现动态生成控件?
    7.  

      完整代码:

      namespace 设计

      {

          public partial class form1 : Form

          {

              public form1()

              {

                  InitializeComponent();

              }

              private void form1_Load(object sender, EventArgs e)

              {

                  int row = 0;

                  for (int i = 0; i < 15; i++)

                  {

                      if (i % 5 == 0 && i != 0)

                      {

                          row++;

                      }

                      Button btn = new Button();

                      //控件名称

                      btn.Name = "mybutton" + i.ToString();

                      //控件显示文本

                      btn.Text = string.Format("按钮{0}", i + 1);

                      //控件大小

                      btn.Size = new Size(50,50);

                      //控件位置【动态变化】

                      btn.Location = new Point(50+i%5*100,50+row*100);

                      //添加到窗体

                      this.Controls.Add(btn);

                  }

              }

          }

      }

  • 相关阅读:
    Postman生成随机数(4)
    Postman参数化(3)
    Postman主界面介绍(2)
    Postman安装与介绍(1)
    Scuba数据库漏洞扫描工具--安装与使用
    Jmeter(八)Linux上安装与使用
    Jmeter(七)生成测试报告(Windows)
    理解动态字符串SDS
    csp复习笔记?
    ORM
  • 原文地址:https://www.cnblogs.com/linnew/p/15439946.html
Copyright © 2011-2022 走看看