aspx页面中如何动态加载自己做的ascx组件?

sy246 2005-05-16 09:37:05
我想在A.aspx页面中调用几个自己写的ascx组件,事先我是不知道该页面都调用了哪些的。只是将该页面调用的组件名称(或一个标识符)都存放在一个XML文件中,也就是说我把一个页面的组成元素都用另外一套XML存放起来了,那么我想知道我怎样能在页面中根据该XML来自动(或被动)的生成一个页面呢?

谢谢
...全文
169 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
awaysrain 2005-05-16
  • 打赏
  • 举报
回复
通过Page.FindControl找到你得table
然后你在你table中得单元格通过XXX.Controls.Add就可以把控件加到制定的位置了

<%@ Control ClassName="Pagelet7CS" %>指令你直接在你的页面里写就行了,我不晓得能不能在后台动态指定,你可以查查资料

"由于 LoadControl 方法返回 System.Web.UI.Control 类型,因此必须将其转换为适当的强类型以便设置控件的各属性"
sy246 2005-05-16
  • 打赏
  • 举报
回复
我想知道如果加载进来了,那么我怎样把加载过来的控件放到指定的Table里面呢?也就是指定控件的位置

还有就是<%@ Control ClassName="Pagelet7CS" %>这个指令我应该怎么加上呢?在后台程序中我应该怎么来控制每个.aspx页面的显示元素呀
LoveCherry 2005-05-16
  • 打赏
  • 举报
回复
http://www.cnblogs.com/lovecherry/archive/2005/04/09/134543.html
awaysrain 2005-05-16
  • 打赏
  • 举报
回复
以编程方式创建用户控件

正如可以编程方式创建普通的服务器控件一样,也可以这样创建用户控件。页的 LoadControl 方法用于加载用户控件,并传递用户控件源文件的虚拟路径:



Control c1 = LoadControl("pagelet7.ascx");
((Pagelet7CS)c1).Category = "business";
Page.Controls.Add(c1);


Dim c1 As Control = LoadControl("pagelet7.ascx")
CType(c1, (Pagelet7VB)).Category = "business"
Page.Controls.Add(c1)


var c1:Control = LoadControl("pagelet7.ascx");
(Pagelet7JS(c1)).Category = "business";
Page.Controls.Add(c1);


C# VB JScript


用户控件的类型由 Control 指令上的 ClassName 属性决定。例如,以文件名“pagelet7.ascx”保存的用户控件被分配强类型“Pagelet7CS”,如下所示:

<%@ Control ClassName="Pagelet7CS" %>

由于 LoadControl 方法返回 System.Web.UI.Control 类型,因此必须将其转换为适当的强类型以便设置控件的各属性。最后,用户控件被添加到基页的 ControlCollection。


C# Pagelet7.aspx

[运行示例] | [查看源代码]


重要说明 只有当为用户控件包括了 Register 指令时,用户控件的强类型才能由包含 Web 窗体页使用(即使没有实际声明的用户控件标记)。



http://chs.gotdotnet.com/quickstart/aspplus/doc/webpagelets.aspx
sukaru 2005-05-16
  • 打赏
  • 举报
回复
关注一下..............

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧