使用参数呈现 ascx 控件并在 asp.net 中插入 html



如何将 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控制现在将显示在页面上。

最新更新