3

我正在使用设计器重新托管示例并尝试将泛型类型放入工具箱中,但是我似乎无法使其工作。

我尝试过基于 XAML:

<sapt:ToolboxItemWrapper  AssemblyName="{StaticResource AssemblyName}">
    <sapt:ToolboxItemWrapper.ToolName>
        System.Activities.Statements.ForEach
    </sapt:ToolboxItemWrapper.ToolName>
</sapt:ToolboxItemWrapper>

和基于代码:

Type t = Type.GetType("System.Activities.Statements.Foreach, System.Activities, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35");
ToolboxItemWrapper w = new ToolboxItemWrapper(t);
category.Add(w);

但是它们似乎都不起作用。有什么建议么?

4

1 回答 1

6

您忽略了不起作用的内容,但我假设您不能在设计器中向 ForEach 添加子活动。

如果是这种情况,那是因为Body属性是 ActivityAction 而不是 Activity,需要对其进行初始化。有几种方法可以做到这一点,但最简单的方法是开始使用设计器中的ForEachWithBodyFactory并将其拖到设计图面上。

以下代码适用于我。我可以将 ForEach 拖到工作流中并向其中添加子项。

var cat = new ToolboxCategory("Standard Activities");
cat.Add(new ToolboxItemWrapper(typeof(ForEachWithBodyFactory<>)));
于 2010-03-31T14:34:08.170 回答