5

我们将在我们自己的应用程序中重新托管WF-4设计器。 我们有一种叫做过滤器的东西。现在我们需要一个活动,让您运行此过滤器 并使用ForEach中的结果。够简单。 但是这些过滤器有一个需要在工作流主机中填充的参数列表(用于运行过滤器)。过滤器参数列表可以是0到N之间的任何值。自定义Activity中的动态参数?

用户设置FilterId后,是否有办法创建该Filter的实例,检查其参数列表并将这些参数添加到Activity中?参数基本上只是名称,类型,并且需要用户填写其值。另一件事,我们不想在运行时创建过滤器的实例,这会太昂贵。在运行时,我们只需要过滤器标识和参数值列表。

如果在FilterId更改并验证此列表中的所有参数都具有值时有更新方法,我会很高兴拥有参数的静态属性。

回答

3

我自己并没有这样做,但如果我没有弄错,我已经看到其他人通过实现ICustomTypeDescriptor接口来做类似的事情。这就是Interop活动用来将WF3活动的属性显示为WF4 InArgument/OutArguments的内容。