我正在使用分散在整个Web项目中的几个ascx文件的ASP.NET站点,我想添加我的ascx文件,但保留现有的代码隐藏文件。我还希望用户能够轻松地在矿井和现有矿井之间切换。理想情况下,我希望用户能够以最小的麻烦安装ascx文件,而无需更改任何代码或经历一些复杂的容易出错的过程。 (目标是提供标记代码的更改)
ASP.NET提供了ControlAdapters,这种机制允许通过映射到服务器控件的适配器自定义服务器控件。我想知道用户控件是否存在这样的机制,如果没有,是否有任何功能或解决方法可以提供相同的结果。
编辑:
我发现了一个没有很好记录的“功能”,可以让我做我想做的事。它叫做tagMapping。它应该与服务器控件一起使用,但它无法与UserControls一起使用。
答案 0 :(得分:0)
您可以将面板添加到要显示这些用户控件的位置。然后,在后端动态地加载用户控件。
UserControl ctrl = (UserControl)this.LoadControl("/UserControls/"
+ whichone + "/.ascx");
yourpanel.Controls.Add(ctrl);