• 如何动态在文本框中添加组合框功能


    最近在开发一套管理软件中,要对七、八个Textbox动态添加可以选择的组合框,点击文本框中先显示组合框Combox并且在组合框中异步加载数据,选择Combox数据,并自动将数据添加Textbox.text中,如果按照常规写法,可能需要更多的代码;

     1         void Form1_Load(object sender, EventArgs e)
     2         {
     3             //对三个文本框添加事件
     4             textBox1.Click += new EventHandler(textBox1_Click);
     5             textBox2.Click += new EventHandler(textBox1_Click);
     6             textBox3.Click += new EventHandler(textBox1_Click);
     7         }
     8 
     9         void textBox1_Click(object sender, EventArgs e)
    10         {
    11             //TODO:定义一个动态组合框
    12             ComboBox cmb = new ComboBox();
    13 
    14             TextBox txtBox = sender as TextBox;
    15           
    16             //用组合框来覆盖文本框
    17             cmb.Location = txtBox.Location;
    18             cmb.Size = txtBox.Size;
    19 
    20             this.Controls.Add(cmb);
    21             cmb.Visible = true;
    22             //置前
    23             cmb.BringToFront();
    24 
    25             //对组合框异步加载
    26            ThreadPool.QueueUserWorkItem(
    27                state =>
    28                    this.BeginInvoke(new Action(() =>
    29                    { cmb.Items.AddRange(new object[] {"one", "two", "three"}); })));   
    30 
    31             //添加事件,使用匿名方法
    32             cmb.SelectedIndexChanged += delegate
    33             {
    34                 txtBox.Text = cmb.Text;
    35                 //置后
    36                 cmb.SendToBack();
    37                 cmb = null;
    38             };
    39 
    40         }
  • 相关阅读:
    Memcached基本架构和思想
    varnish和squid的对比
    常用排序讲解
    数据结构堆的一种比较明白的讲解
    磁盘挂载MOUNT 445问题集
    mysql 如何提高批量导入的速度
    云平台涅槃重生计划
    NumPy、SciPy 等Python包在Windows下的whl安装包下载
    表迁移工具的选型-复制ibd的方法
    下一步的技术研究方向
  • 原文地址:https://www.cnblogs.com/zjgtlkj/p/3843603.html
Copyright © 2020-2023  润新知