共用方式為


逐步解說:使用 WPF 設計工具裝載 Windows Form 使用者控制項

更新:2007 年 11 月

本逐步解說示範如何使用 Windows Presentation Foundation (WPF) Designer for Visual Studio,在 WPF 應用程式中裝載 Windows Form 複合控制項。如需 Windows Form 和 WPF 互通性的詳細資訊,請參閱移轉和互通性。 

這個逐步解說所說明的工作包括:

  • 建立專案。

  • 建立 Windows Form 複合控制項。

  • 在 WPF 應用程式中,裝載 Windows Form 控制項。

注意事項:

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

必要條件

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

  • Visual Studio 2008.

建立專案

第一步是建立主應用程式的專案。

若要建立專案

  1. 建立名稱為 "DemoApplication" 的 WPF 應用程式專案。如需詳細資訊,請參閱 HOW TO:建立新的 WPF 應用程式專案

    Window1.xaml 隨即在 WPF 設計工具中開啟。 

  2. 在 [方案總管] 中,加入名為 WindowsFormsIntegration.dll 的 WindowsFormsIntegration 組件之參考。

  3. 在 [方案總管] 中,加入名為 System.Windows.Forms.dll 之 Windows Form 組件的參考。

建立 Windows Form 複合控制項

這個程序示範如何建立會按照其內容調整大小的複合控制項。TableLayoutPanel 控制項及 AutoSize 屬性會提供控制項的動態配置功能。如需詳細資訊,請參閱 TableLayoutPanel 控制項 (Windows Form)

若要建立 Windows Form 複合控制項

  1. 將名為 "DemoControlLibrary" 的新 Windows Form 控制項程式庫專案加入至方案。如需詳細資訊,請參閱 HOW TO:新增及移除方案項目

    UserControl1 隨即在 Windows Form 設計工具中開啟。

  2. 從 [工具箱] 中,按兩下 TableLayoutPanel 控制項。TableLayoutPanel 控制項會顯示在設計介面上。

  3. 選取 [TableLayoutPanel 工作] 智慧標籤功能表中的 [移除最後一個資料列]。

  4. 在 [屬性] 視窗中,將 Dock 屬性的值設定為 Fill

  5. 從 [工具箱] 中,將 Label 控制項加入至 TableLayoutPanel 控制項的第一個儲存格。

  6. 在 [屬性] 視窗中,為 Label 控制項設定下列屬性:

    屬性

    AutoSize

    True

    Dock

    Fill

    Margin

    0,0,0,0

    Text

    Enter Date:

    TextAlign

    MiddleCenter

  7. 從 [工具箱] 中,將 MaskedTextBox 控制項加入至 TableLayoutPanel 控制項的第二個儲存格中。

  8. 按一下 MaskedTextBox 控制項上的智慧標籤圖像 (智慧標籤圖像),然後選取 [MaskedTextBox 工作] 功能表中的 [設定遮罩]。

    [輸入遮罩] 對話方塊隨即出現。

  9. 從 [遮罩描述] 資料行中選取 [Short Date],然後按一下 [確定] 按鈕。

  10. 在 [屬性] 視窗的頂端,選取下拉式清單中的 TableLayoutPanel 控制項。

  11. AutoSize 屬性值設定為 true。

  12. 在 [屬性] 視窗的頂端,選取 [UserControl1]。

  13. AutoSize 屬性的值設定為 true,然後將 Size 屬性的值設定為 0,0。

    UserControl1 會調整大小以配合其內容。

  14. 選取 [建置] 功能表上的 [建置方案],以建置方案。

將 Windows Form 控制項裝載在 WPF 中

您要使用 WindowsFormsHost 項目,在 WPF 應用程式中裝載 UserControl1。

若要在 WPF 中裝載 Windows Form 控制項

  1. 在 [方案總管] 中的 DemoApplication 專案中,加入 DemoControlLibrary 專案的參考。如需詳細資訊,請參閱 HOW TO:在 Visual Studio 中新增或移除參考 (Visual Basic)

  2. 在 WPF 設計工具中開啟 Window1.xaml。

  3. 在 [XAML] 檢視中,將下列命名空間對應插入至開頭 Window 標記中,以匯入 DemoControlLibrary 命名空間。如需詳細資訊,請參閱 HOW TO:將命名空間匯入 XAML

    xmlns:dc="clr-namespace:DemoControlLibrary;assembly=DemoControlLibrary"
    
  4. Grid 開頭標記之後,插入下列程式碼。

    <WindowsFormsHost HorizontalAlignment="Left" VerticalAlignment="Top">
        <dc:UserControl1/>
    </WindowsFormsHost>
    

    代表已裝載之 Windows Form 控制項的區域隨即顯示在設計工具中。

後續步驟

您也可以將 WPF 控制項裝載在 Windows Form 中。如需詳細資訊,請參閱使用 Windows Presentation Foundation 控制項

請參閱

工作

逐步解說:在 Windows Presentation Foundation 中裝載 Windows Form 控制項

參考

WindowsFormsHost

ElementHost

其他資源

使用 WPF 設計工具中的控制項

移轉和互通性