动态加载用户控件

动态加载用户控件

ID:18457464

大小:56.50 KB

页数:8页

时间:2018-09-18

动态加载用户控件_第1页
动态加载用户控件_第2页
动态加载用户控件_第3页
动态加载用户控件_第4页
动态加载用户控件_第5页
资源描述:

《动态加载用户控件》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、动态加载用户控件(整理)微软示例:就像您可以通过编程方式在Web窗体页上创建任意ASP.NET服务器控件的实例,您也可以通过使用包含页的LoadControl方法来做到这一点。但您首先必须使用@Control指令的className属性将强类型与用户控件相关联。之所以需要这样是因为LoadControl方法返回Control类的类型,并且您需要将该用户控件转换为合适的强类型,以便设置该控件的各个属性。以下代码使用className属性将MyUserControl.ascx文件中保存的用户控件转换为强类型。<%@ControlclassName="MyUserControl"

2、%>以编程方式创建用户控件的实例1.使用@Reference指令在要包含用户控件的Web窗体页的顶部注册该用户控件。当以编程方式创建用户控件时,只有您创建了对该控件的引用后,用户控件的强类型才可用于该Web窗体页。例如,以下代码创建对MyUserControl.ascx文件中所创建用户控件的引用。<%@ReferenceControl="MyUserControl.ascx"%>注意当以声明方式在Web窗体页中创建用户控件的实例时,请使用@Register指令。2.在代码隐藏类文件中,或是在包含.aspx文件的代码声明块中,创建用户控件的实例。根据需要分配属性值,并使用Ad

3、d方法将该控件添加到包含页的ControlCollection对象上。这使该控件可用于该页的继承的Control.Controls属性。在以下示例中,创建MyUserControl.ascx的实例并将其BackColor属性设置为beige。[C#]Controlc1=LoadControl("MyUserControl.ascx");((MyUserControl)c1).BackColor="beige";Page.Controls.Add(c1);[VisualBasic]Dimc1AsUserControl=LoadControl("MyUserControl.as

4、cx")CType(c1,MyUserControl).BackColor="beige"Page.Controls.Add(c1)注意当您使用Add方法将控件添加到ControlCollection对象时,这些控件将按处理顺序放置在集合中。如果您希望将控件添加到集合中的特定位置,请使用AddAt方法并指定您要存储该控件的索引位置。地址:ms-help://MS.VSCC/MS.MSDNVS.2052/cpguide/html/cpconinstantiatingusercontrolsprogrammatically.htm鸿雪示例:注:本方法是我同事李强原创步骤一:把a

5、scx控件拖入设计窗口,然后转入html模式,保留定义如果你需要多个ascx的话,请全部拖入。但是把相应的内容删除。(因为我们需要动态加载)在需要填入控件的地方,放个容器,比如td,并设定在服务器端运行如    2:动态调用UserControlmyusercontrol=(UserControl)LoadControl("../includes/pageNavigater.ascx");            Typemyusertype=myusercontrol.GetType();//下面是给ascx

6、赋值            PropertyInfo  myuserinfo1=myusertype.GetProperty("RelatedDatagrid");//).GetProperty("RelatedDatagrid");            myuserinfo1.SetValue(myusercontrol,gridhwcy  ,null);                        PropertyInfo  mypassinfo=myusertype.GetProperty("torefresh");            mypassinfo.S

7、etValue(myusercontrol,true,null);                        PropertyInfo  myuserdatasource=myusertype.GetProperty("RelatedDataSource");            myuserdatasource.SetValue(myusercontrol,dv,null);            tdpan.Controls.Clear();            tdpan.Controls.Add(m

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。