每個 Activity 對應一個 ActivityDesigner,駐留環境 (Designer Surface) 可替換 (WinForms/WebForms)。

[Designer(typeof(ActivityDesigner), typeof(IDesigner))][Designer(typeof(ActivityDesigner), typeof(IRootDesigner))]| 設計器 | 呈現方式 |
|---|---|
| ParallelActivityDesigner | 子活動並行顯示 |
| SequenceDesigner | 子活動循序顯示 |
| 自訂複合活動 | 需自行實作 Designer (如優先級關係視覺化) |
IExtenderListService 加入自訂 IExtenderProvider[ProvideProperty("Priority")] 關聯 PropertyGridCanExtend 判斷是否套用 → 呼叫 GetPriority/SetPriority
[Designer(typeof(PrioritizedInterleaveDesigner), typeof(IDesigner))]
public class PrioritizedInterleave : CompositeActivity { ... }
CompositeActivityDesigner.ContainedDesigners 取得所有子活動設計器。
IDesignerVerbProviderIDesignerVerbProviderService.AddVerbProvider(this)ActivityDesignerVerb.Properties 取得 Activity → Get/Set 屬性PerformLayout() 套用變更Glyphs 回傳 ActivityDesignerGlyphCollectionAdd(new DesignerGlyph()) 加入自訂裝飾