此主題描述在 Windows Presentation Foundation (WPF) 應用程式中裝載「Windows 工作流程設計工具」執行個體的程序。
此程序會設定包含設計工具的 [方格] 控制項、以程式設計方式建立包含預設 Sequence 活動之 WorkflowDesigner 的執行個體、註冊設計工具中繼資料以便為所有內建活動提供設計工具支援,以及在 WPF 應用程式中裝載「工作流程設計工具」。
若要裝載工作流程設計工具
開啟您在工作 1:建立新的 Windows Presentation Foundation 應用程式 (部分機器翻譯) 中建立的 HostingApplication 專案。
將視窗調整至方便使用「工作流程設計工具」的大小。 若要這樣做,請在設計工具中選取 [MainWindow],按 F4 顯示 [屬性] 視窗,然後在 [配置] 區段中將 [寬度] 設定成值 600 並將 [高度] 設定成值 350。
選取設計工具中的 [方格] 面板 (按一下 [MainWindow] 內的方塊),並且將 [屬性] 視窗頂端的 [Name] 屬性設定為 "grid1",以設定方格名稱。
在 [屬性] 視窗中,按一下
ColumnDefinitions屬性旁的省略符號 (...) 以開啟 [集合編輯器] 對話方塊。在 [集合編輯器] 對話方塊中,按三次 [加入] 按鈕以將三個資料行插入配置中。 第一個資料行將包含 [工具箱]、第二個資料行將裝載「工作流程設計工具」,而第三個資料行則用於屬性偵測器。
將中間資料行的
Width屬性的值設定為 "4*"。按一下 [確定] 以儲存變更。 下列 XAML 已加入您的 MainWindow.xaml 檔案:
<Grid Name="grid1"> <Grid.ColumnDefinitions> <ColumnDefinition /> <ColumnDefinition Width="4*" /> <ColumnDefinition /> </Grid.ColumnDefinitions> </Grid>在 [方案總管] 中,以滑鼠右鍵按一下 MainWindow.xaml,然後選取 [檢視程式碼]。 遵循下列步驟修改程式碼:
新增下列命名空間:
using System.Activities; using System.Activities.Core.Presentation; using System.Activities.Presentation; using System.Activities.Presentation.Metadata; using System.Activities.Presentation.Toolbox; using System.Activities.Statements; using System.ComponentModel;若要宣告私用成員欄位以保留 WorkflowDesigner 的執行個體,請將下列程式碼加入
MainWindow類別:public partial class MainWindow : Window { private WorkflowDesigner wd; public MainWindow() { InitializeComponent(); } }將下列
AddDesigner方法新增至MainWindow類別。 該實作會建立 WorkflowDesigner 的執行個體、在其中加入 Sequence 活動,然後將其置於 grid1 [方格] 的中間資料行中。private void AddDesigner() { // Create an instance of WorkflowDesigner class. this.wd = new WorkflowDesigner(); // Place the designer canvas in the middle column of the grid. Grid.SetColumn(this.wd.View, 1); // Load a new Sequence as default. this.wd.Load(new Sequence()); // Add the designer canvas to the grid. grid1.Children.Add(this.wd.View); }註冊設計工具中繼資料,為所有內建活動加入設計工具支援。 這樣可讓您從工具箱將活動放置於「工作流程設計工具」中的原始 Sequence 活動。 若要這樣做,請將
RegisterMetadata方法加入MainWindow類別:private void RegisterMetadata() { var dm = new DesignerMetadata(); dm.Register(); }如需註冊活動設計工具的詳細資訊,請參閱作法:建立自訂活動設計工具 (部分機器翻譯)。
在
MainWindow類別建構函式中,將呼叫加入至先前宣告的方法,為中繼資料註冊設計工具支援,以建立 WorkflowDesigner。public MainWindow() { InitializeComponent(); // Register the metadata. RegisterMetadata(); // Add the WFF Designer. AddDesigner(); }
按 F5 以建置並執行方案。
請參閱工作 3:建立工具箱與 PropertyGrid 窗格 (部分機器翻譯),以了解如何將工具箱和 PropertyGrid 支援新增至重新裝載的工作流程設計工具。