好记性不如烂笔头。

动态加载用户控件

动态加载用户控件:

想要用程序控制方法给web form网页加入用户控件,依照布凑进行

1:先将欲动态加入用户控件的web form的网页的。aspx文件切换到html视图,然后在顶端使用语法如下的@Reference指令语句来登陆用户控件:

<%@Reference Control="pathtofile"%>

@Reference指令能够让你以动态方法编译与链接用户控件,并将它加至网页的ControlCollection对象中,此举可以让你在调用LoadControl方法之后,将返回的类型转换。比方说,如果你要使用MyFirstWebUserControl.ascx,请这样写:

<%@Reference Control="MyFirstWebUserControl.ascx"%>

2:在代码后置类文件(web form.cs)文件中,建立用户控件实例,并视需要设置用户控件的相关属性,写法如下:

UserControl mycontrol=(UserControl)LoadControl("MyFirstWebUserControl.ascx");

((MyFirstWebUserControl)mycontrol).Backcolor="red";

((MyFirstWebUserControl)mycontrol).Forecolor="Yellow";

page.Controls.Add(mycontrol);

如果使用add方法将用户控件加至ControlConnection对象,它们会被放到集合中的结尾。如果你希望将用户控件加至集合中

特定的索引位置,请使用AddAt方法。

或者利用容器:Panel利用容器可以有效地控制控件的位置:

Panel1.Controls.Add(mycontrol);