建立 SharePoint 的 Web 組件

透過使用 Web 組件,您可以使用瀏覽器,修改 SharePoint 網站頁面的內容、外觀和行為。 Web 組件是在 Web 組件頁面內執行的伺服器端控制項:其是出現在 SharePoint 網站上的頁面建置組塊。 請參閱建置組塊:Web 組件

您可以使用來自 Visual Studio 的範本,在 SharePoint 網站上建立和偵錯 Web 組件。

在 Visual Studio 中建立 Web 組件

Web 組件專案新增至任何 SharePoint 專案,以建立 Web 組件。 您可以在沙箱化解決方案或伺服器陣列解決方案中使用 Web 組件項目。

如果您想要使用設計工具以視覺化方式設計 Web 組件,請建立視覺 Web 組件專案,或將視覺 Web 組件項目專案新增至任何 SharePoint 專案。 您只能在伺服器陣列解決方案中使用視覺 Web 元件項目。

Web 組件項目

Web 組件項目會提供若干檔案,您可以用來設計 SharePoint 網站的 Web 組件。 當您新增 Web 組件項目時,Visual Studio 會在您的專案中建立一個資料夾,然後將數個檔案新增至該資料夾。 下表描述每個檔案。

檔案 說明
Elements.xml 包含專案中功能定義檔用來部署 Web 組件的資訊。
.webpart 檔案 提供 SharePoint 在 Web 組件庫中顯示 Web 組件所需的資訊。
程式碼檔案 包含將控制項新增至 Web 組件,以及在 Web 組件內產生自訂內容的方法。

如需詳細資訊,請參閱作法:建立 SharePoint Web 組件

視覺 Web 組件項目

視覺 Web 組件是您使用 Visual Studio 中 Visual Web 開發人員設計工具所建立的 Web 組件。 視覺 Web 組件的運作方式與任何其他 Web 組件相同。 若要將按鈕和文字方塊等控制項新增至 Web 組件,您可以將程式碼新增至 XML 檔案。 不過,您可以將控制項新增至視覺 Web 組件,方法是從 Visual Studio 工具箱將這些控制項拖曳或複製至 Web 組件。 設計工具接著會在 XML 檔案中產生必要的程式碼。 請參閱作法:使用設計工具建立 SharePoint Web 組件

SharePoint 控制項

Visual Studio 提供一些控制項,用於建立 SharePoint 頁面,例如應用程式頁面。 這些控制項會出現在 [工具箱] 的 [SharePoint 控制項] 下。 這些控制項的功能衍生自 Microsoft.SharePoint.WebControls 命名空間,其中包含 SharePoint 網站和清單頁面上所使用的 ASP.NET 伺服器控制項。

控制項名稱 描述
AspMenu 插入 ASP 功能表。 如需詳細資訊,請參閱功能表控制項概觀
CssLink LINK 元素插入 .aspx 頁面,並套用 CssRegistration 所定義的一或多個外部樣式表。
DateTimeControl 將 DateTime 控制項插入 .aspx 頁面。
FormDigest 將安全性驗證插入 .aspx 頁面
ListProperty 傳回所指定清單的屬性。
ProjectProperty 傳回目前網站的全域屬性。
RssLink 將 RSS 摘要的連結插入 .aspx 頁面。
ScriptLink 提供用於在頁面上註冊資源的屬性和方法,例如指令碼,以便在轉譯頁面時要求這些方法和屬性。
主題 將佈景主題套用至 .aspx 頁面。

偵錯 Web 組件

您可以偵錯包含 Web 組件的 SharePoint 專案,就像偵錯其他 Visual Studio 專案一樣。 當您啟動 Visual Studio 偵錯工具時,Visual Studio 會開啟 SharePoint 網站。

若要開始偵錯您的程式碼,請將 Web 組件新增至 SharePoint 中的 Web 組件頁面。

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

視覺 Web 組件限制

從 Visual Studio 開始,您可以將視覺 Web 元件新增至沙箱化 SharePoint 解決方案和伺服器陣列解決方案。 不過,視覺 Web 組件有下列限制:

  • 視覺 Web 組件不支援可取代的參數。 如需詳細資訊,請參閱可取代的參數

  • 使用者控制項或視覺 Web 組件無法拖放或複製到視覺 Web 組件。 此動作會導致建置錯誤。

  • 視覺 Web 組件不會直接支援 SharePoint 伺服器權杖,例如 $SPUrl。 如需詳細資訊,請參閱針對 SharePoint 解決方案進行疑難排解主題中的「沙箱化 Visual Web 元件中的權杖限制」。

  • 沙箱化解決方案中的視覺 Web 組件偶爾會收到錯誤「沙箱化程式碼執行要求遭到拒絕,因為沙箱化程式碼主機服務太忙而無法處理要求。」如需此錯誤的詳細資訊,請參閱 SharePoint 開發人員小組部落格中的這篇文章。

  • Visual Studio 中不支援伺服器端 JavaScript 偵錯,但支援用戶端 JavaScript 偵錯。

    雖然您可以將內嵌 JavaScript 新增至伺服器端標記檔案,但新增至標記的中斷點不支援偵錯。 若要偵錯 JavaScript,請在標記檔案中參考外部 JavaScript 檔案,然後在 JavaScript 檔案中設定中斷點。

  • 偵錯內嵌 ASP.NET 程式碼必須在產生的程式碼檔案中完成,而不是在標記檔案中完成。

  • 視覺 Web 組件不支援使用 <@ Assembly Src= 指示詞。

  • SharePoint 沙箱化環境中不支援 SharePoint Web 控制項和一些 ASP.NET 控制項。 如果在沙箱化解決方案的視覺 Web 組件上使用不支援的控制項,則會出現「命名空間 'Microsoft.SharePoint.WebControls' 中不存在類型或命名空間名稱 'Theme'」錯誤。

    如需沙箱化解決方案的詳細資訊,請參閱沙箱化解決方案與伺服器陣列解決方案之間的差異

建立舊式 SharePoint 型 Web 組件

您可以使用 Visual Studio 中的範本,為 SharePoint 建立自訂 ASP.NET 2.0 Web 組件。 ASP.NET 2.0 Web 組件建置在 ASP.NET Web 組件基礎結構之上,而且是新專案的建議類型。

在極少數情況下,您可能必須使用舊式 SharePoint 型 Web 組件來建立 Web 組件。 您可以使用 Visual Studio 來建立這些類型的 Web 組件,但 Visual Studio 不會提供任何專為協助您建立這些 Web 組件而設計的範本。

如需何時您可能想要建立舊式 SharePoint 型 Web 組件的詳細資訊,請參閱 Windows SharePoint 服務中的 Web 組件基礎結構。 如需如何使用舊式 SharePoint 型 Web 組件建立 Web 組件的詳細資訊,請參閱逐步解說:建立基本 SharePoint Web 組件

標題 描述
如何:建立 SharePoint Web 組件 向您展示如何建立 SharePoint 頁面的 Web 組件。
如何:使用設計工具來建立 SharePoint Web 組件 向您展示如何使用視覺化設計介面建立 SharePoint 的 Web 組件。
如何:為 SharePoint 應用程式頁面或 Web 組件建立使用者控制項 向您展示如何建立自訂、可重複使用的控制項,這些控制項可由 SharePoint 中執行的應用程式頁面和 Web 組件取用。
逐步解說:建立 SharePoint 的 Web 組件 描述如何設計 SharePoint 的 Web 組件。
逐步解說:使用設計工具來建立 SharePoint 的 Web 組件 描述如何將控制項拖曳至視覺化設計介面,以設計 SharePoint 的 Web 組件。
逐步解說:建立可顯示 OData for SharePoint 的 Silverlight Web 組件 描述如何設計 SharePoint 的 Web 組件,其會裝載 Silverlight 應用程式,以及顯示來自 SharePoint 清單的資料。