裝載工作流程設計工具
雖然有 Visual Studio 版的 Windows Workflow Foundation 工作流程視覺化設計工具,但工作流程設計工具可裝載在 Visual Studio 之外的 Windows 應用程式。 您可以在您自己的自訂 Windows 應用程式中裝載圖形化工作流程設計工具。 自訂應用程式可實作簡易型的工作流程設計工具,其中具備基本的設計工具功能,例如能夠圖形化顯示預先建立的工作流程,或者您可以實作具有更穩固功能集的工作流程設計工具版本,與 Visual Studio 版的設計工具類似。
您在裝載工作流程設計工具時,必須使用的主要類別如下:
.NET DesignSurface 類別,可透過提供完整的獨立設計介面來實作使用者視為設計工具的項目。
WorkflowView 類別,會顯示工作流程標記所描述之工作流程的視覺化表示。
WorkflowDesignerLoader 類別,可支援工作流程設計工具和工作流程設計工具元件的自訂載入。
WorkflowDesignerMessageFilter 類別,可從此類別中衍生以建立自訂訊息篩選條件,此篩選條件會透過覆寫適當的虛擬方法來處理工作流程設計工具事件,如拖曳作業、配置和繪製作業,以及其他設計工具事件。
Basic Designer Hosting範例顯示如何使用這些類別建立在 Windows 應用程式中裝載的簡易版工作流程設計工具。
WorkflowDesigner 控制項是Workflow Tracking Profile Designer的一部分,為自訂工作流程設計工具的主應用程式提供了良好的起點。 WorkflowDesigner 控制項提供一個簡單的方法,可新增和擴充主應用程式中的工作流程設計工具功能。
新增功能表命令功能
因為工作流程設計工具是在 .NET Framework SDK 中基底設計工具類別上建置的,所以為了能夠存取您自訂應用程式中的功能表命令,您必須從 MenuCommandService 類別衍生、覆寫其某些成員,然後將它當做服務加入工作流程載入器物件所使用之設計工具載入器主應用程式中。
下列範例將示範如何建立自訂 MenuCommandService。 在此範例中,呼叫 ShowContextMenu 時,會建立一個內容功能表。 在 GetSelectionMenuItems 方法中,會利用 WorkflowMenuCommands 類別,使工作流程設計工具所提供的適當功能表命令與其對應文字產生關聯。 當完成這項作業時,事件處理常式會與每一個命令產生關聯,如此一來,當選取此命令時,就會叫用適當的 MenuCommand。
下列範例顯示如何在衍生自 WorkflowDesignerLoader 的型別上,將您的衍生 MenuCommandService 型別新增至已覆寫 Initialize 方法中的設計工具載入器主應用程式。
以下命令具有您可在您應用程式中使用的預設實作:
您必須實作 WorkflowMenuCommands 和 StandardCommands 中的其他命令。
對於如 Undo 和 MultiLevelUndo 等命令,您必須從下列介面和類別衍生並實作:
建立這些衍生服務類別後,您必須將它們新增至覆寫的 Initialize 方法,如本節前面所述。
此外,您必須使用 AddCommand 方法,將任何使用者實作的命令新增至您的衍生 MenuCommandService 型別,如此一來,每當在您的設計工具中存取命令時,都會呼叫適當的事件處理常式。
如需詳細資訊,請參閱 .NET Framework SDK 中的Extending Design-Time Support。
設計工具裝載範例
下列範例顯示如何裝載工作流程設計工具:
Basic Designer Hosting:顯示 Windows 應用程式中裝載的簡易版工作流程設計工具。
Outlook Workflow Wizard:使用 WorkflowView 類別示範如何使用 Windows Workflow Foundation 工作流程物件模型建立可以由工作流程設計工具加以視覺化的工作流程定義。
Workflow Monitor:顯示如何使用工作流程設計工具來建立一個會顯示工作流程和活動狀態資訊的工具。
Workflow Tracking Profile Designer:顯示如何使用 WorkflowDesigner 控制項來建立一個支援從工作流程定義建立追蹤設定檔的工具。
請參閱
參考
WorkflowView
WorkflowDesignerLoader
WorkflowDesignerMessageFilter
其他資源
Basic Designer Hosting
Outlook Workflow Wizard
Workflow Monitor
Workflow Tracking Profile Designer
Copyright © 2007 by Microsoft Corporation. All rights reserved.