我编写了一个内容系统,允许用户编辑网站的页面。当他们编辑页面时,他们可以选择用于页面的模板。所有内容和选择都在数据库中。
当我显示页面时,我只调用一个文件(DisplayPage.aspx),传递页面ID。这使用页面ID选择所选模板,以显示页面。
每个模板都有自己的内容占位符集,有些在所有模板中都很常见,有些模板是唯一的。我的问题是,如果动态选择母版页并且占位符的数量/名称不同,我如何引用和填充模板的所有内容占位符。
答案 0 :(得分:0)
遍历所有控件并递归遍历其子控件并检查类型,如果它们是contentplaceholder,则表示您拥有ID。
for (string cphID in ((MasterPageType)this.MasterPage).ContentPlaceHolders)
{
Debug.WriteLine(cphID);
}