c#怎么动态生成控件?

 我来答
优游自如
2010-12-17 · TA获得超过1012个赞
知道小有建树答主
回答量:233
采纳率:0%
帮助的人:186万
展开全部
WinForm中,我们想在窗体Form1中动态生成一个位于窗体中间的Button,可以这样做

Button dyBtn = new Button();
//设置文本
dyBtn.Text = "动态生成的Button";
//改变按钮的长和宽
dyBtn.Size = new Size(150,25);
//改变按钮的位置 这里是置于窗体中间
dyBtn.Location = new Point((this.Width-dyBtn.Width)/2,(this.Height-dyBtn.Height)/2);
//注册按钮点击事件
dyBtn.Click += delegate { MessageBox.Show("我是动态生成的哦!"); };
//将按钮加入窗体
this.Controls.Add(dyBtn); //注意:这里的this指的是当前Form的实例
//将Button置于控件顶层
dyBtn.BringToFront();
劉青峰
2010-12-17 · TA获得超过1602个赞
知道小有建树答主
回答量:775
采纳率:0%
帮助的人:526万
展开全部
为什么要动态生成,可以先把控件隐藏,需要的时候在显示。
或则是先把长宽都设为零,需要的时候再改变其大小。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wvqkhn
2010-12-17
知道答主
回答量:40
采纳率:0%
帮助的人:22.8万
展开全部
Button newBtn = new Button();
newBtn.Location = new System.Drawing.Point(128, 110);
newBtn.Name = "newBtn";
newBtn.Size = new System.Drawing.Size(75, 23);
newBtn.Text = "button2";
newBtn.UseVisualStyleBackColor = true;
this.Controls.Add(newBtn);
///清除新生成的Btn
this.Controls.Remove(newBtn);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
rui_xing_
2015-12-23 · 知道合伙人教育行家
rui_xing_
知道合伙人教育行家
采纳数:6306 获赞数:51261
在读博士研究生

向TA提问 私信TA
展开全部

代码如下:

private void button1_Click(object sender, EventArgs e)
        {
            TextBox textbox = new TextBox();
            if (list.Count == 0)
            {
                textbox.Location = new Point(20, 20);
                this.Controls.Add(textbox);
                this.ResumeLayout(false);
                list.Add(textbox);
            }
            else
            {
                TextBox a = list.Last<TextBox>();
                int b = a.Location.Y;
                b += 20;
                textbox.Location = new Point(20, b);
                this.Controls.Add(textbox);
                this.ResumeLayout(false);
                list.Add(textbox);
            }
            
        }

    


   

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友94c4b7f
2010-12-17 · TA获得超过369个赞
知道小有建树答主
回答量:322
采纳率:0%
帮助的人:140万
展开全部
每个控件都有相应的类,先创建实例,然后给属性赋值
TextBox tb = new TextBox(); tb.Text = "值";
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式