WorkflowDesignerLoader.SaveDesignerLayout メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
デザイナー レイアウトをシリアル化します。
protected:
void SaveDesignerLayout(System::Xml::XmlWriter ^ layoutWriter, System::Workflow::ComponentModel::Design::ActivityDesigner ^ rootDesigner, [Runtime::InteropServices::Out] System::Collections::IList ^ % layoutSaveErrors);
protected void SaveDesignerLayout (System.Xml.XmlWriter layoutWriter, System.Workflow.ComponentModel.Design.ActivityDesigner rootDesigner, out System.Collections.IList layoutSaveErrors);
member this.SaveDesignerLayout : System.Xml.XmlWriter * System.Workflow.ComponentModel.Design.ActivityDesigner * IList -> unit
Protected Sub SaveDesignerLayout (layoutWriter As XmlWriter, rootDesigner As ActivityDesigner, ByRef layoutSaveErrors As IList)
パラメーター
- layoutWriter
- XmlWriter
レイアウトのシリアル化に使用される XmlWriter
。
- rootDesigner
- ActivityDesigner
レイアウト情報の取得元のルート アクティビティ。
- layoutSaveErrors
- IList
シリアル化中に発生したエラー。
例
次の例は、SaveDesignerLayout メソッドを使用してワークフローのデザイン レイアウト情報を保存する方法を示しています。 オブジェクトが XmlWriter 作成されると、 ActivityDesigner ワークフローの for RootComponent
が取得され、メソッドに SaveDesignerLayout 渡されます。 このメソッドによって生成されたレイアウト ファイルを読み込むには、LoadDesignerLayout を参照してください。
public void SaveLayout()
{
using (XmlWriter writer = XmlWriter.Create("wfInstanceId.designer.xml"))
{
IList layoutSaveErrors = new ArrayList() as IList;
IDesignerHost host = (IDesignerHost)GetService(typeof(IDesignerHost));
ActivityDesigner rootDesigner = host.GetDesigner(host.RootComponent) as ActivityDesigner;
this.SaveDesignerLayout(writer, rootDesigner, out layoutSaveErrors);
if (layoutSaveErrors.Count > 0)
{
System.Text.StringBuilder sb = new System.Text.StringBuilder("Errors:\r\n");
foreach (WorkflowMarkupSerializationException error in layoutSaveErrors)
{
sb.Append(error.Message + "\r\n");
}
MessageBox.Show(sb.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
Public Sub SaveLayout()
Using writer As XmlWriter = XmlWriter.Create("wfInstanceId.designer.xml")
Dim layoutSaveErrors As IList = CType(New ArrayList(), IList)
Dim host As IDesignerHost = CType(GetService(GetType(IDesignerHost)), IDesignerHost)
Dim rootDesigner As ActivityDesigner = CType(host.GetDesigner(host.RootComponent), ActivityDesigner)
Me.SaveDesignerLayout(writer, rootDesigner, layoutSaveErrors)
If layoutSaveErrors.Count > 0 Then
Dim sb As New System.Text.StringBuilder("Errors:\r\n")
For Each errorMessage As WorkflowMarkupSerializationException In layoutSaveErrors
sb.Append(errorMessage.Message + "\r\n")
Next
MessageBox.Show(sb.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
End Using
End Sub