如何将 ascx 控件替换为 html 中的字符串标记?
我想创建一个动态的 html 模板。
这是我的网页
<div id="Detail_Container">
<div>Gallery 1</div>
<load_gallery>G6</load_gallery>
<div>Gallery 2</div>
<load_gallery>G7</load_gallery>
</div>
我试过这个:控件正在呈现,但我的图像未加载到控件中。
StringBuilder sb = new StringBuilder();
HtmlTextWriter textWriter = new HtmlTextWriter(new StringWriter(sb));
UserControl objControl = (UserControl)LoadControl(inControlPath);
objControl.GalleryId = "G5";
if (objControl != null)
objControl.RenderControl(textWriter);
string controlstr = tw.ToString();
您不能只将用户控件作为字符串添加到 html,因为它是在服务器上呈现和处理的。但是,您可以在页面上放置一个占位符,然后向此宫殿持有人添加控件。
下面是如何在运行时加载和添加用户控件的示例代码:
//here I am loading usercontrol from ascx file...
WfGenericFormUserControl genControl = (WfGenericFormUserControl)LoadControl("~/UserControls/WfGenericFormUserControl.ascx");
//FormPlaceHolder is placeholder inside target page
FormPlaceHolder.Controls.Add(genControl);
GenControl控制现在将显示在页面上。