C# winform中使用动态加载控件的属性

COMBOX1不是动态加载的//动态加载并设置GroupBox控件GroupBoxGB_An=newGroupBox();GB_An.Text="选择";GB_An.Si... COMBOX1不是动态加载的

//动态加载并设置GroupBox控件
GroupBox GB_An = new GroupBox();
GB_An.Text = "选择";
GB_An.Size = new Size(260, 100);
//在GroupBox中动态加载并设置TableLayoutPanel控件
TableLayoutPanel P_An = new TableLayoutPanel();
P_An.ColumnCount = 2;
P_An.RowCount = 3;
P_An.Location = new Point(6, 20);
P_An.Size = new Size(248, 80);
//动态加载并设置Label,ComboBox控件
Label LBL_AnBuildingName = new Label();
LBL_AnBuildingName.Text = "姓名";
CBX_AnBuildingName = new ComboBox();
//向TableLayoutPanel添加Label,ComboBox控件
P_An.Controls.Add(LBL_AnBuildingName, 0, 0);
P_An.Controls.Add(CBX_AnBuildingName, 1, 0);
//向GroupBox添加TableLayoutPanel控件
GB_An.Controls.Add(P_An);

具体就是在窗体中有一个flowLayoutPanel1,在flowLayoutPanel1里本身有一个COMBOX1;在窗体LOAD的时候动态加载一个GROUDBOX控件,在GROUDBOX控件中中加载一个TableLayoutPanel控件,再在TableLayoutPanel控件中加载一个LABEL和一个COMBOX

那么在combox1的textchanged事件中想要实现
CBX_AnBuildingName.text=combox1.text的功能
要怎么写代码呢

private void comboBox1_TextChanged(object sender, EventArgs e)
{
Control[] c = this.flowLayoutPanel1.Controls.Find("GB_An",true);

}
我写的上面这个代码根本找不到GB_An控件是为什么呢?

内容很多,辛苦大家帮我解答了,谢谢^^
展开
 我来答
孙中吕
2011-06-13 · 专注C/S架构开发框架技术研究
孙中吕
采纳数:435 获赞数:788

向TA提问 私信TA
展开全部
晕~~

GroupBox GB_An = new GroupBox();
GB_An.Name="GB_An"; <<<------- 你要给个名啊!

我告诉你一个动态加载控件的方式:建个窗体,拖上你想要的控件,然后查看xxx.Designer.cs文件,把里面的代码Copy出来就行了,不用你这样花N多时间来写!

有兴趣在这里找资料:
www.csframework.com C/S开发框架网
追问
我太迷糊了    谢谢
还有一个问题
listview的SelectedIndexChanged事件执行完后自动弹出对话框是为什么呢
弹出的对话框是 “文档内容已修改,是否保存修改内容”,然后有是,否,取消三种选择按钮
追答
是否在SelectedIndexChanged事件内有什么处理?跟踪代码!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-06-27
展开全部
用控件的name属性命名才可以
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式