Sharepoint 2010 如何在SharePoint中显示Web部件中的用户控件

Sharepoint 2010 如何在SharePoint中显示Web部件中的用户控件,sharepoint-2010,web-parts,Sharepoint 2010,Web Parts,我正在为SharePoint 2010构建一个Web部件,但我已经创建了一个repeater和一些在Web部件的用户控件的Load方法上执行的方法 现在,我想将该控件包括在Web部件中,这样我就可以在SharePoint中看到它,因为我实际上没有看到它,尽管我将它添加到Web部件中,如下所示,在CreateChildControls方法中: VisualWebPart1UserControl uc = new VisualWebPart1UserControl();

我正在为SharePoint 2010构建一个Web部件,但我已经创建了一个repeater和一些在Web部件的用户控件的Load方法上执行的方法

现在,我想将该控件包括在Web部件中,这样我就可以在SharePoint中看到它,因为我实际上没有看到它,尽管我将它添加到Web部件中,如下所示,在
CreateChildControls
方法中:

        VisualWebPart1UserControl uc = new VisualWebPart1UserControl();

        this.Controls.Add(uc);

我遗漏了什么?

您所做的基本上是手动创建一个可视Web部件

visual Web部件模板使用以下代码实现此结果:

public class VisualWebPart1 : WebPart {
    // Visual Studio might automatically update this path when you change the Visual Web Part project item.
    private const string _ascxPath = @"~/_CONTROLTEMPLATES/VisualWebPart1/VisualWebPart1UserControl.ascx";

    protected override void CreateChildControls() {
        Control control = Page.LoadControl(_ascxPath);
        Controls.Add(control);
    }
}

您可能想考虑在VisualStudio中创建一个可视化WebPoST,并用您的控件替换<代码> .ASXX/COD>文件。

< P>您所做的实际上是手动创建一个可视化的WebPub。

visual Web部件模板使用以下代码实现此结果:

public class VisualWebPart1 : WebPart {
    // Visual Studio might automatically update this path when you change the Visual Web Part project item.
    private const string _ascxPath = @"~/_CONTROLTEMPLATES/VisualWebPart1/VisualWebPart1UserControl.ascx";

    protected override void CreateChildControls() {
        Control control = Page.LoadControl(_ascxPath);
        Controls.Add(control);
    }
}

您可能想考虑在VisualStudio中创建一个可视化WebPoST,并用您的控件替换<代码> .asx文件。< /P>是否有任何异常被抑制?您是否已将web部件添加到页面?我已添加web部件,但未显示任何内容。在我将内容移动到web控件之前,它就这样做了。它不会抛出任何错误。您是否收到任何被抑制的异常?您是否已将web部件添加到页面?我已添加web部件,但未显示任何内容。在我将内容移动到web控件之前,它就这样做了。它不会抛出任何错误。