在UserControl中渲染WebPart而不包含DIV

时间:2014-07-18 15:30:48

标签: c# .net sharepoint user-controls web-parts

我正在构建一个usercontrol来将webpart放在我的pagelayouts中。

我基本上在做什么:

<uc:WebPartInclude WPName="WebPartName" runat="server"</uc:WebPartInclude>

这一切都很好,除了一件事:它现在用<div> ... </div>围绕webpart的内容。

由于我是清除代码的傻瓜,所以这个div必须去^ _ ^

public class WebPartInclude : Control
{
    public string WPName = "";
    private WebControl webPartControl = null;
    protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);
        webPartControl = (WebControl)System.Reflection.Assembly.GetExecutingAssembly().CreateInstance("full path..." + WPName);
    }

    protected override void Render(HtmlTextWriter writer)
    {
        base.RenderChildren (writer);
    }
    protected override void CreateChildControls()
    {
        if (webPartControl != null)
            Controls.Add(webPartControl);
        ChildControlsCreated = true;
    }

    public override ControlCollection Controls
    {
        get
        {
            EnsureChildControls();
            return base.Controls;
        }
    }
}

因此webpart呈现以下内容:

<div>
    ... webpart contents
</div>

我想要周围的div去,有任何想法吗?

1 个答案:

答案 0 :(得分:0)

好吧,既然无法以一种很好的方式修复它,我只是使用HtmlTextWriter将内容写入字符串并剥离周围的<div> ... {{1} }。

问题解决了,但不是很好。