场景
我有一个使用母版页的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'的对象。”
最佳答案
如果在需要时在运行时添加用户控件该怎么办。
UserControls_header3 uh3 = (UserControls_header3)this.LoadControl(header3);
phHeaderControls.Controls.Add(uh3);