![]() |
1
7
通常,我会用
(这里validOptions是ActivityDesigner类的一些集合属性。myStringProperty是基础活动的某些公共get/set/property,例如:
)
如果你再加上
|
![]() |
2
4
以前的答案很有用,但对我来说还不够。最终,我在微软的.NET 4.5开发人员指南中找到了一篇2012年的优秀文章: binding a custom activity property to a designer control.>除了自定义转换器类中的一个小错误和一个主要缺陷外,这篇文章几乎是完整答案:该技术将从组合框中保存一个值,但当您重新打开工作流时,它将不会还原该值。 Microsoft的Ron Jacobs has another answer for custom activity designer s.最后,我将两者结合起来,得到了一个有效的解决方案。
自定义设计器
|
![]() |
3
2
解决这个问题的一种方法是定义自己的ComboBoxeditor,它是从UITypeEditor派生的。 公开要在Activity类中绑定此组合框的集合,并用以下属性装饰Activity类中的可绑定属性:
此外,在自定义ComboBoxeditor中,必须修改 EditValue(ITypedDescriptorContext Context、IServiceProvider Provider Provider、Object Value)方法获取集合并将其绑定到组合框。 |