Share via


為 Web 組件或應用程式頁面建立可重複使用的控制項

在 Visual Studio 中,您可以為 SharePoint 中執行的應用程式頁面和 Web 組件,建立可供其利用之自訂、可重複使用的控制項。 這些控制項稱為使用者控制項。 使用者控制項是一種複合控制項,其運作方式與 ASP.NET 網頁非常相似 — 您可以將現有的 Web 伺服器控制項和標記新增至使用者控制項,並為該控制項定義屬性和方法。 然後,您可以將它們內嵌在 ASP.NET 網頁中,它們在其中作為一個單元。

建立使用者控制項

若要建立使用者控制項,請將使用者控制項新增至空白 SharePoint 專案。 如需詳細資訊,請參閱如何:為 SharePoint 應用程式頁面或 Web 組件建立使用者控制項

當您新增使用者控制項項目時,Visual Studio 會在您的專案中建立一個資料夾,然後將數個檔案新增至該資料夾中。 下表描述每個檔案。

檔案 說明
使用者控制項檔案 定義使用者控制項。 將控制項和標記新增至此檔案,以設計使用者控制項。
程式碼檔案 包含使用者控制項背後的程式碼。 將處理事件的程式碼新增至此檔案中。
設計工具程式碼檔案 包含設計工具所產生的程式碼,不應直接編輯。

設計使用者控制項

在 Visual Studio 中使用 Visual Web 開發人員設計工具來設計使用者控制項。 這個設計工具會在您開啟專案中的使用者控制項檔案並選擇 [設計] 索引標籤時顯示。

使用使用者控制項

您必須在應用程式頁面或 Web 組件中包含使用者控制項後,使用者控制項才會出現在 SharePoint 中。

若要在應用程式頁面中包含使用者控制項,請開啟您要在其中新增 ASP.NET 使用者控制項的網頁。 切換至 [設計] 檢視,然後在 [方案總管] 中選取您的自訂使用者控制項檔案,然後將它拖曳到該頁面中。 該 ASP.NET 使用者控制項會新增至該頁面中,而設計工具會建立 @ Register 指示詞 (這是該頁面識別使用者控制項所必需的)。 您現在可以使用該控制項的公用屬性和方法。

若要在 Web 組件中包含使用者控制項,請將該使用者控制項新增至 Web 組件程式碼檔案中的 Web 組件 Controls 集合中。 以下範例將使用者控制項新增至 Web 組件的 Controls 集合中。

[ToolboxItemAttribute(false)]
public class VisualWebPart1 : WebPart
{
    private const string _ascxPath = @"~/_CONTROLTEMPLATES/CS/VisualWebPart1/VisualWebPart1UserControl.ascx";

    public VisualWebPart1()
    {
    }

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

    protected override void RenderContents(HtmlTextWriter writer)
    {
        base.RenderContents(writer);
    }
    
}

對使用者控制項進行偵錯

若要對使用者控制項進行偵錯,請確定該使用者控制項包含在 SharePoint 專案中的應用程式頁面或 Web 組件中。 然後,您可以在該使用者控制項中對程式碼進行偵錯,就像在任何 Visual Studio 專案中對程式碼進行偵錯一樣。

當您啟動 Visual Studio 偵錯工具時,Visual Studio 會開啟 SharePoint 網站。

在 SharePoint 中,開啟包含該使用者控制項的應用程式頁面。 如果使用者控制項包含在 Web 組件中,請將該 Web 組件新增至 SharePoint 中的 Web 組件頁面中。

如需對 SharePoint 專案進行偵錯的詳細資訊,請參閱針對 SharePoint 解決方案進行疑難排解

標題 描述
如何:為 SharePoint 應用程式頁面或 Web 組件建立使用者控制項 向您展示如何建立可供在 SharePoint 中執行的應用程式頁面和 Web 組件所使用的自訂、可重複的使用控制項。