【发布时间】:2009-10-15 09:19:10
【问题描述】:
情景
我有一个使用母版页的 ASP.Net Web 项目。 此母版页包含用户控件形式的菜单。 有时我想动态更改它以使用不同类型的菜单用户控件。
当前注册用户控件的代码
<%@ Register TagPrefix="chase" TagName="topMenu" Src="~/UserControls/TopMenu.ascx" %>
正文标签内
<div id="menuRow">
<chase:topMenu runat="server" />
</div>
问题
无论如何我可以动态更改注册代码中的“SRC”属性以使用不同的用户控件吗?!
帮助不胜感激
编辑:
尝试了此代码,但我收到“无效的强制转换异常”
TopMenu uh3 = (TopMenu)this.LoadControl("~/UserControls/TopMenu.ascx");
menuRow.Controls.Add(uh3);
'无法将'ASP.usercontrols_topmenu_ascx'类型的对象转换为'SwintonTaxiWeb.UserControls.TopMenu'类型。'
【问题讨论】:
-
你必须投射你加载的控件吗?为什么不只是:menuRow.Controls.Add(this.LoadControl("~/UserControls/TopMenu.ascx"));
标签: c# .net asp.net visual-studio user-controls