我正在使用基础项目 https://github.com/orosandrei/Rehosted-Workflow-Designer
这显示了如何使用roslyn创建工作流设计器以及如何使用c#表达式编辑器或vb表达式编辑器创建工作流设计器。不幸的是,加载现有工作流后,即使将其放入属性sap2010:ExpressionActivityEditor.ExpressionActivityEditor =“ C#”
中,它也不会拾取编辑器创建新密钥的关键是
_expressionEditorServiceVB =新的VbExpressionEditorService(); _wfDesigner = new WorkflowDesigner(); _wfDesigner.Context.Services.GetService).TargetFrameworkName =新的System.Runtime.Versioning.FrameworkName(“。NETFramework”,新的Version(4,5)); _wfDesigner.Context.Services.GetService()。LoadingFromUntrustedSourceEnabled = true; _wfDesigner.Context.Services.Publish(_expressionEditorServiceVB);
///将所有基本活动与他们的设计师相关联 新的DesignerMetadata()。Register();
//加载工作流Xaml _wfDesigner.Load(sourceFile);
在此处,它会在注册DesignerMetdata之前添加合适的基于IExpressionEditorService的服务。如何检测和加载合适的工作流编辑器和WPF友好样式?我意识到我可以在加载和搜索属性之前先查看xml并进行设置。但这似乎是错误的方法,并不是说我有很多WPF经验。