ASP.NET动态加载用户控件的实现方法
程序员文章站
2022-05-05 16:02:35
第一步:例如用户控件放在mylist.ascx,然后其control指令是: 复制代码 代码如下:<%@ control language="c#" autoeven...
第一步:例如用户控件放在mylist.ascx,然后其control指令是:
<%@ control language="c#" autoeventwireup="true" codefile="viewcomment.ascx.cs" inherits="control_viewcomment"%>
这时候已经有了inherits,自带了classname就是其名称,如果没有,则必须创建classname属性。
假设其有公共属性id。
第二步:在某一个aspx文件需要动态加载的话首先使用
<%@ reference control="mylist.ascx" %>
<%@ page language="c#" codefile="getascx.aspx.cs" inherits="adentity_getascx" %>
引用,这时候在代码页getascx.aspx.cs可以动态加载ascx控件了:
control_viewcomment ctrl = (control_viewcomment)page.loadcontrol("~/control/viewcomment.ascx");
ctrl.id = request["adentityid"];
base.controls.add(ctrl);
另:
<%@ register assembly="business" namespace="business" tagprefix="my" %>
完成。
复制代码 代码如下:
<%@ control language="c#" autoeventwireup="true" codefile="viewcomment.ascx.cs" inherits="control_viewcomment"%>
这时候已经有了inherits,自带了classname就是其名称,如果没有,则必须创建classname属性。
假设其有公共属性id。
第二步:在某一个aspx文件需要动态加载的话首先使用
复制代码 代码如下:
<%@ reference control="mylist.ascx" %>
<%@ page language="c#" codefile="getascx.aspx.cs" inherits="adentity_getascx" %>
引用,这时候在代码页getascx.aspx.cs可以动态加载ascx控件了:
control_viewcomment ctrl = (control_viewcomment)page.loadcontrol("~/control/viewcomment.ascx");
ctrl.id = request["adentityid"];
base.controls.add(ctrl);
另:
复制代码 代码如下:
<%@ register assembly="business" namespace="business" tagprefix="my" %>
完成。
下一篇: asp.net生成静态页并分页+ubb