【问题标题】:How to display the User Control within a webpart, in SharePoint如何在 SharePoint 中的 Web 部件中显示用户控件
【发布时间】:2023-03-18 11:53:01
【问题描述】:

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

现在,我想将该控件包含在 webpart 中,这样我就可以在 SharePoint 中看到它,因为我实际上看不到它,尽管我按如下方式将它添加到 webpart 中,在 CreateChildControls 方法中:

        VisualWebPart1UserControl uc = new VisualWebPart1UserControl();

        this.Controls.Add(uc);

我错过了什么?

【问题讨论】:

  • 您是否遇到任何被抑制的异常?您是否已将 Web 部件添加到页面?
  • 我已经添加了 webpart,但我没有显示任何内容。在我将内容移动到 Web 控件之前,它已经完成了。它不会抛出任何错误。

标签: sharepoint-2010 web-parts


【解决方案1】:

您所做的实际上是手动创建一个可视化 webpart。

可视化 webpart 模板使用以下代码来实现此结果:

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);
    }
}

您可能只想考虑在 Visual Studio 中创建一个可视化 Web 部件并用您的控件替换 .ascx 文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-29
    • 1970-01-01
    • 1970-01-01
    • 2012-12-24
    • 2012-04-28
    • 2011-06-17
    • 2020-02-14
    • 1970-01-01
    相关资源
    最近更新 更多