-1
我想在執行WF4流程圖之前禁用某些步驟。 我的流程圖非常簡單,每個節點有一個起始節點和3個帶有WriteLine活動的序列:「步驟1」,「步驟2」,「步驟3」。禁用流程圖上的步驟
我想禁止「第2步」順序,因此控制檯必須編寫「第1步」\ n「步驟3」,這是我的代碼(它完美地適用於順序工作流程,但不適用於流程圖!!)
Activity a = new Activity1();
Activity customActivity = Customize(a);
WorkflowInvoker.Invoke(customActivity);
Console.ReadLine();
static System.Activities.Activity Customize(System.Activities.Activity scheme)
{
var activities = WorkflowInspectionServices.GetActivities(scheme);
var rootActivity = activities.FirstOrDefault();
if (rootActivity is Sequence)
{
var seqActivities = ((Sequence)rootActivity).Activities;
var badActivity = seqActivities.FirstOrDefault(a => a.DisplayName == "Step2");
seqActivities.Remove(badActivity);
}
if (rootActivity is Flowchart)
{
var seqActivities = ((Flowchart)rootActivity).Nodes.Cast<FlowStep>().ToList();
var badActivity = seqActivities.FirstOrDefault(a => a.Action.DisplayName == "Step2");
bool b = ((Flowchart)rootActivity).Nodes.Remove(badActivity);
}
return scheme;
}
Thx for your help!
txk回覆:) – SebFrance 2012-02-09 09:11:01