C# Windows工作流上的用户界面
使用Windows工作流时是否有内置的UI功能 假设我有一个工作流程,需要一个小时才能运行,不同的活动一直在发生。当它运行时,我想看看哪些活动当前处于活动状态,哪些活动已经运行等等C# Windows工作流上的用户界面,c#,workflow-foundation,C#,Workflow Foundation,使用Windows工作流时是否有内置的UI功能 假设我有一个工作流程,需要一个小时才能运行,不同的活动一直在发生。当它运行时,我想看看哪些活动当前处于活动状态,哪些活动已经运行等等 我是否必须自己编写此UI,或者WF是否具有内置功能,以图形方式显示工作流的状态等?要了解工作流处于哪个状态,我订阅WorkflowIdled事件并执行以下操作: private delegate void UpdateDelegate(); void workflowRuntime_Wor
我是否必须自己编写此UI,或者WF是否具有内置功能,以图形方式显示工作流的状态等?要了解工作流处于哪个状态,我订阅WorkflowIdled事件并执行以下操作:
private delegate void UpdateDelegate();
void workflowRuntime_WorkflowIdled(object sender, WorkflowEventArgs e)
{
StateMachineWorkflowInstance stateMachineInstance = new StateMachineWorkflowInstance(MyManager.WorkflowRuntime, MyInstance.Id);
UpdateDelegate LclUpdateDelgate = delegate()
{
// Update the workflow state on the form thread
if (stateMachineInstance.CurrentState != null)
LabelWorkflowState.Text = stateMachineInstance.CurrentStateName;
else
LabelWorkflowState.Text = "";
};
this.Invoke(LclUpdateDelgate);
}
没有内置的用户界面 但是,您可以通过订阅WorflowInstance上的事件查看其他答案,或者使用
前者很容易设置为快速解决方案,但后者可用于多个主机进程和长时间运行的卸载工作流实例。查看MSDN上的此代码示例: