WF4 Workflow Designer を再ホストしようとしています。[インポート] タブで、デフォルトでいくつかの名前空間をインポートしたいと考えています。次のようになります。
インポートされた名前空間 http://imageshack.us/m/850/5383/imports.png
多くの研究の後、私はあなたが見ればそれを理解しました
workflowDesigner.Context.Items.GetValue<ImportedNamespaceContextItem>().ImportedNamespaces
すでにインポートされているものを見ることができます。ただし、このコレクションに名前空間を手動で追加しても効果はないようです。したがって、私の質問は次のとおりです。インポートされた名前空間をこのリストに正しい方法で追加するにはどうすればよいですか? または、手動で追加した名前空間のインポートを使用してコンテキストを更新するにはどうすればよいですか?
以下のソリューションへの追加情報:
これを解決するために、目的の「白紙の状態」アクティビティ XAML ファイルを作成してプロジェクトに追加し、ビルド アクションを埋め込みリソースに設定し、カスタム ツールを空の文字列に設定しました。
次に、WorkflowDesigner を初期化するコードで、次のことを行います。
_Wd = new WorkflowDesigner();
_Wd.Load(
XamlServices.Load(
ActivityXamlServices.CreateBuilderReader(
new XamlXmlReader(
Assembly.GetEntryAssembly().GetManifestResourceStream( "WpfApplication1.New.xaml" )
)
)
) as ActivityBuilder
);
これで、ワークフローに必要な名前空間がすべてインポートされました。