我需要为我的站点内容创建动态模板,并在 Asp.Net c# 中动态加载其中的 .ascx 控件。
例如,我有一个空白的默认页面,并在其中动态加载存储在数据库中或仅存储在 html 页面中的 html 模板,然后在该 html(假设为 div)中动态加载其他 .ascx 控件。
我需要它来为不同的用户或域加载不同的网站模板,并使用不同的小部件。
在Joomla中使用了这种想法,您可以更改您的html模板和css,并为不同的子域提供不同的外观。
任何想法都会很棒。
最佳答案
通常,您会使用 .NET 母版页创建带有数据占位符的模板,并从该母版页(或使用它的页面)动态控制占位符的哪些部分应该显示什么,哪些控制加载等等。
好好看看母版页http://msdn.microsoft.com/en-us/library/wtxbf3hh.aspx
//Loading an .ascx dynamically is as simple as:
MyControlType myControl = (MyControlType)LoadControl("/location/MyControlType.ascx");
// and simply add it to the placeholders controls by
myPlaceHolder.Controls.Add(myControl);
加载和添加的逻辑当然取决于您。
关于c# - 创建和动态使用内容模板和控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5791723/