Share via


逐步解說:在設計階段建立 Windows Form 的新 WPF 內容

本主題會示範如何建立 Windows Presentation Foundation (WPF) 控制項以便在 Windows Forms 架構應用程式中使用。

在這個逐步解說中,您會執行下列工作:

  • 建立專案。

  • 建立新的 WPF 控制項。

  • 將新的 WPF 控制項加入到 Windows Form。 WPF 控制項會裝載到 ElementHost 控制項中。

注意事項注意事項

根據您目前使用的設定或版本,您所看到的對話方塊與功能表指令可能會與 [說明] 中描述的不同。 若要變更設定,請從 [工具] 功能表中選取 [匯入和匯出設定]。 如需詳細資訊,請參閱 使用設定

必要條件

您需要下列元件才能完成此逐步解說:

  • Visual Studio 2008。

建立專案

第一步是建立 Windows Form 專案。

注意事項注意事項

裝載 WPF 內容時,只支援 C# 和 Visual Basic 專案。

若要建立專案

建立新的 WPF 控制項

建立新的 WPF 控制項並將其加入到專案中,就像將其他任何項目加入到專案中一樣容易。 Windows Form 設計工具搭配一種特定的控制項運作,這種控制項稱為「複合控制項」(Composite Control) 或「使用者控制項」(User Control)。 如需 WPF 使用者控制項的詳細資訊,請參閱 UserControl

注意事項注意事項

WPF 的 System.Windows.Controls.UserControl 型別不同於 Windows Form 所提供的使用者控制項型別,該型別又稱為 System.Windows.Forms.UserControl

若要建立新的 WPF 控制項

  1. 在 [方案總管] 中,將新的 [WPF 使用者控制項程式庫] 專案加入至解決方案。 使用控制項程式庫的預設名稱 WpfControlLibrary1。 預設控制項名稱為 UserControl1.xaml。

    加入控制項會具有下列效果。

    • 會加入 UserControl1.xaml 檔案。

    • 會加入 UserControl1.xaml.cs 或 UserControl1.xaml.vb 檔案。 這個檔案包含事件處理常式和其他實作的程式碼後置 (Code-Behind)。

    • 會加入 WPF 組件的參考。

    • UserControl1.xaml 檔案會在 WPF Designer for Visual Studio 中開啟。

  2. 在 [設計] 檢視下,確定已選取 UserControl1。 如需詳細資訊,請參閱 HOW TO:在設計介面上選取並移動項目

  3. 在 [屬性] 視窗中,將 WidthHeight 屬性的值設定為 200。

  4. 從 [工具箱],將 System.Windows.Controls.TextBox 控制項拖曳到設計介面。

  5. 在 [屬性] 視窗中,將 Text 屬性的值設定為 [裝載的內容]。

    注意事項注意事項

    一般而言,您應該裝載更為複雜的 WPF 內容。 System.Windows.Controls.TextBox 控制項在此僅供說明用途使用。

  6. 建置專案。

將 WPF 控制項加入至 Windows Form

您的新 WPF 控制項已經準備好在表單上使用。 Windows Form 會使用 ElementHost 控制項裝載 WPF 內容。

若要將 WPF 控制項加入至 Windows Form

  1. 在 Windows Form 設計工具中開啟表單 Form1。

  2. 在 [工具箱] 中,找到標記為 [WPFUserControlLibrary WPF 使用者控制項] 的索引標籤。

  3. 將 UserControl1 的執行個體拖曳到表單上。

    • 便會自動在表單上建立 ElementHost 控制項以裝載 WPF 控制項。

    • ElementHost 控制項的名稱為 elementHost1,而且在 [屬性] 視窗中,您可以看到其 Child 屬性已設定為 [UserControl1]。

    • WPF 組件的參考會加入到專案中。

    • elementHost1 控制項具有智慧標籤面板,顯示可用的裝載選項。

  4. 在 [ElementHost 工作] 智慧標籤面板中,選取 [停駐於父容器中]。

  5. 按 F5 建置並執行應用程式。

後續步驟

Windows Form 和 WPF 是不同的技術,不過可以藉由設計密切地相互操作。 若要在應用程式中提供更豐富的外觀與行為,請嘗試下列各項。

請參閱

參考

ElementHost

WindowsFormsHost

其他資源

移轉和互通性

使用 WPF 控制項

WPF 設計工具