2009-12-03 185 views
3

假設我有一個具有2個依賴項屬性的工作流:Prop1,Prop2。工作流自定義活動構建工作流參數

我想創建一個自定義活動,當我拖入工作流時,它將在設計器的屬性網格中顯示Prop1和Prop2。

這可能嗎?

與invokeWorkflow類似,當您選擇TargetWorkflow時,它會使用工作流的參數填充屬性網格,以便您可以進行綁定。

+0

你指的是什麼技術? – 2009-12-03 16:43:36

+0

看起來像工作流程基礎 – 2009-12-03 16:50:36

+0

是微軟的工作流程基礎 – pdiddy 2009-12-03 16:58:23

回答

2

你可以嘗試這樣的事:

http://blogs.microsoft.co.il/blogs/bursteg/archive/2006/10/29/DynamicWorkflowBindingParameters.aspx

我已經做了相當多的在設計時挖掘到動態創建的屬性,我已經取得了一些成功的。

但是,我還沒有能夠獲得動態屬性顯示在實際的屬性綁定顯示。因此,您可以在設計器中動態創建屬性並設置它們,但可以將其他屬性設置爲指向動態屬性。

這似乎是visual studio中工作流設計器的限制。我看不到工作流引擎本身無法處理這個問題的原因。

0

您不需要執行任何操作,默認情況下所有公共屬性都顯示在屬性網格中。

+0

但這些都是工作流程的屬性。我希望我的活動能夠在設計器中檢測和顯示工作流屬性,以便通過我的自定義活動來綁定到工作流屬性。 – pdiddy 2009-12-04 13:06:40

+0

聽起來好像您在問自己的自定義活動如何顯示自定義活動所在的工作流祖先所定義的依賴項屬性。然而,這似乎是一個bizare要求,你能解釋爲什麼會需要這樣的事情嗎?我認爲這是可以做到的,但我在質疑努力是否值得。 – AnthonyWJones 2009-12-13 22:20:33

0

如果你像這樣定義你的屬性中的每一個,綁定應提供:

[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Visible)] 
[BrowsableAttribute(true)] 
[CategoryAttribute("Parameters")] 
public static readonly DependencyProperty CustomParamProperty 
    = DependencyProperty.Register("CustomParam", typeof(int), typeof(CustomActivityClass)); 

public int CustomParam 
{ 
    get { return (int)GetValue(CustomParamProperty); } 
    set {SetValue(CustomParamProperty, value); } 
} 

祝您好運!

相關問題