逐步解說:使用 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.
建立專案
第一步是建立主應用程式的專案。
若要建立專案
建立名稱為 "DemoApplication" 的 WPF 應用程式專案。如需詳細資訊,請參閱 HOW TO:建立新的 WPF 應用程式專案。
Window1.xaml 隨即在 WPF 設計工具中開啟。
在 [方案總管] 中,加入名為 WindowsFormsIntegration.dll 的 WindowsFormsIntegration 組件之參考。
在 [方案總管] 中,加入名為 System.Windows.Forms.dll 之 Windows Form 組件的參考。
建立 Windows Form 複合控制項
這個程序示範如何建立會按照其內容調整大小的複合控制項。TableLayoutPanel 控制項及 AutoSize 屬性會提供控制項的動態配置功能。如需詳細資訊,請參閱 TableLayoutPanel 控制項 (Windows Form)。
若要建立 Windows Form 複合控制項
將名為 "DemoControlLibrary" 的新 Windows Form 控制項程式庫專案加入至方案。如需詳細資訊,請參閱 HOW TO:新增及移除方案項目。
UserControl1 隨即在 Windows Form 設計工具中開啟。
從 [工具箱] 中,按兩下 TableLayoutPanel 控制項。TableLayoutPanel 控制項會顯示在設計介面上。
選取 [TableLayoutPanel 工作] 智慧標籤功能表中的 [移除最後一個資料列]。
從 [工具箱] 中,將 Label 控制項加入至 TableLayoutPanel 控制項的第一個儲存格。
在 [屬性] 視窗中,為 Label 控制項設定下列屬性:
屬性
值
AutoSize
True
Dock
Fill
Margin
0,0,0,0
Text
Enter Date:
TextAlign
MiddleCenter
從 [工具箱] 中,將 MaskedTextBox 控制項加入至 TableLayoutPanel 控制項的第二個儲存格中。
按一下 MaskedTextBox 控制項上的智慧標籤圖像 (),然後選取 [MaskedTextBox 工作] 功能表中的 [設定遮罩]。
[輸入遮罩] 對話方塊隨即出現。
從 [遮罩描述] 資料行中選取 [Short Date],然後按一下 [確定] 按鈕。
在 [屬性] 視窗的頂端,選取下拉式清單中的 TableLayoutPanel 控制項。
將 AutoSize 屬性值設定為 true。
在 [屬性] 視窗的頂端,選取 [UserControl1]。
將 AutoSize 屬性的值設定為 true,然後將 Size 屬性的值設定為 0,0。
UserControl1 會調整大小以配合其內容。
選取 [建置] 功能表上的 [建置方案],以建置方案。
將 Windows Form 控制項裝載在 WPF 中
您要使用 WindowsFormsHost 項目,在 WPF 應用程式中裝載 UserControl1。
若要在 WPF 中裝載 Windows Form 控制項
在 [方案總管] 中的 DemoApplication 專案中,加入 DemoControlLibrary 專案的參考。如需詳細資訊,請參閱 HOW TO:在 Visual Studio 中新增或移除參考 (Visual Basic)。
在 WPF 設計工具中開啟 Window1.xaml。
在 [XAML] 檢視中,將下列命名空間對應插入至開頭 Window 標記中,以匯入 DemoControlLibrary 命名空間。如需詳細資訊,請參閱 HOW TO:將命名空間匯入 XAML。
xmlns:dc="clr-namespace:DemoControlLibrary;assembly=DemoControlLibrary"
在 Grid 開頭標記之後,插入下列程式碼。
<WindowsFormsHost HorizontalAlignment="Left" VerticalAlignment="Top"> <dc:UserControl1/> </WindowsFormsHost>
代表已裝載之 Windows Form 控制項的區域隨即顯示在設計工具中。
後續步驟
您也可以將 WPF 控制項裝載在 Windows Form 中。如需詳細資訊,請參閱使用 Windows Presentation Foundation 控制項。
請參閱
工作
逐步解說:在 Windows Presentation Foundation 中裝載 Windows Form 控制項