重新托管的Workflow Designer默认导入的名称空间
|
我正在尝试重新托管WF4工作流设计器。在“导入”标签中,我想默认导入一些名称空间。看起来像这样:
导入的名称空间http://imageshack.us/m/850/5383/imports.png
经过大量研究,我发现如果您
workflowDesigner.Context.Items.GetValue<ImportedNamespaceContextItem>().ImportedNamespaces
您将看到已经导入的内容。但是,手动向该集合添加名称空间似乎没有任何效果。因此,我的问题是:如何以正确的方式将导入的名称空间添加到此列表?或者,如何使用手动添加的名称空间导入来刷新上下文?
以下解决方案的其他信息:
为了解决这个问题,我创建了所需的“ clean slate”活动XAML文件,将其添加到我的项目中,将其“构建操作”设置为“嵌入式资源”,并将其“自定义工具”设置为空字符串。
然后,在初始化WorkflowDesigner的代码中,执行以下操作:
_Wd = new WorkflowDesigner();
_Wd.Load(
XamlServices.Load(
ActivityXamlServices.CreateBuilderReader(
new XamlXmlReader(
Assembly.GetEntryAssembly().GetManifestResourceStream( \"WpfApplication1.New.xaml\" )
)
)
) as ActivityBuilder
);
现在,我的工作流程已导入所有所需的名称空间。
没有找到相关结果
已邀请:
2 个回复
寇剩
到XAML文件中的根活动以导入System.IO
嘘伪
原因:在
在https://referencesource.microsoft.com/#System.Activities.Presentation/System.Activities.Presentation/System/Activities/Presentation/View/ImportDesigner.xaml.cs,1d24713ba95e69c5中访问\“ Imports \”的.Collection属性引发空指针异常。可能是因为没有加载有关导入名称空间的信息。 解决方案:使用活动
从Alex \的帖子中并将其.Load()放入WorkflowDesigner实例。 完整代码段: