我可以在WF 4.0中从另一个继承一个Activity Designer吗?

时间:2011-11-02 07:11:09

标签: workflow workflow-foundation workflow-foundation-4

我在WF中创建了一个活动设计器,我想将其作为其他活动设计者的基础。

当我尝试这样做时,我得到一个编译器错误 - 它们都是部分类,因此我必须在所有位置更改基类的声明。

查看VS生成的代码,我看到所有其他Activity设计者都继承自ActivityDesigner类。

有没有办法让一个活动设计师与另一个活动设计师合作?

PS:我认为没有,因为通常活动设计师通过“Designer”属性绑定到Activity类。

1 个答案:

答案 0 :(得分:1)

如果您有XAML +代码活动设计器,则已在XAML中指定基类 - 它是sap:ActivityDesigner(在第一行)。 因此,如果您在代码中提供另一个基类,那么您正在执行多重继承,并且它不适用于C#。 尝试将XAML的根标记更改为:

<local:MyBaseActivityDesigner xmlns:local="[your local assembly and namespace]" xmlns:...>

然后从代码隐藏中删除基本类型 这将设置属性设计器基类型。

当然有一个问题 - 你必须在仅代码中定义基础设计师! XAML +代码设计器不能用作基类型。