System.Activities.ActivityBuilder的隐藏工作流参数

时间:2011-04-07 06:31:18

标签: c# .net-4.0 workflow-foundation-4 workflow-activity

我已经重新托管了Workflow设计器,我加载的基本活动是Activity Builder(workflowDesigner.Load(activityBuilder);)

我基本上需要在活动中添加一些细节,以及用户无法编辑的值(或者甚至可以在设计器表面上看到)。为此,我(现在)添加一些参数如下,我可以添加额外的信息。

  activityBuilder.Properties.Add (new DynamicActivityProperty
    {
        Name = "HiddenArgument",
        Type = typeof (string),
        Value = "Value that the user should not edit."
    });

但是,由于这些参数在设计器底部的Arguments面板中的设计器表面上可见,因此用户可以对其进行编辑。我还有其他参数允许用户编辑,因此我无法禁用整个参数窗格。

我只想知道如何将我的信息添加到工作流程中(显然将其保存在* .XAML文件中),以便用户无法编辑(或查看)此信息。

EXTRA DETAILS :我基本上想要这样的东西,如果我创建一个自定义活动,我可以使用[Browsable(false)]添加属性,这会导致用户看不到右边的属性窗格但保持一个值!

2 个答案:

答案 0 :(得分:1)

EditorBrowsableAttribute是您在常规Activity上的普通参数中使用的。

[Browsable(false)]
[EditorBrowsable(EditorBrowsableState.Never)]
public InArgument<string> Foo { get; set;}

答案 1 :(得分:1)

[Browsable(false)] - 只有此属性才能避免在PropertyInspector中显示此参数。 [EditorBrowsable(EditorBrowsableState.Never)] - 不会影响Property Inspector中此参数的avialabitly,它会使intellisense无法访问该属性。

[Browsable(false)]
public InArgument<string> Foo { get; set;}