다음을 통해 공유


WorkflowDesignerLoader.LoadDesignerLayout(XmlReader, IList) 메서드

정의

serialize된 레이아웃을 현재 디자이너 호스트의 루트 디자이너에 적용합니다.

protected:
 void LoadDesignerLayout(System::Xml::XmlReader ^ layoutReader, [Runtime::InteropServices::Out] System::Collections::IList ^ % layoutLoadErrors);
protected void LoadDesignerLayout (System.Xml.XmlReader layoutReader, out System.Collections.IList layoutLoadErrors);
member this.LoadDesignerLayout : System.Xml.XmlReader * IList -> unit
Protected Sub LoadDesignerLayout (layoutReader As XmlReader, ByRef layoutLoadErrors As IList)

매개 변수

layoutReader
XmlReader

serialize된 레이아웃에 대해 생성된 XmlReader입니다.

layoutLoadErrors
IList

deserialization 도중 발생한 오류의 목록입니다.

예제

이 예제에서는 LoadDesignerLayout 메서드를 사용하여 특정 워크플로 정의의 레이아웃을 로드하는 방법을 보여 줍니다. XmlReader 개체는 SaveDesignerLayout을 사용하여 만든 디자이너 레이아웃 파일의 파일 이름으로 만들어집니다. 오류가 발생한 경우 레이아웃 로드가 완료된 후 해당 오류가 사용자에게 표시됩니다.

public void LoadLayout()
{
    using (XmlReader reader = XmlReader.Create("wfInstanceId.designer.xml"))
    {
        IList layoutLoadErrors = new ArrayList() as IList;
        this.LoadDesignerLayout(reader, out layoutLoadErrors);

        if (layoutLoadErrors.Count > 0)
        {
            System.Text.StringBuilder sb = new System.Text.StringBuilder("Errors:\r\n");
            foreach (WorkflowMarkupSerializationException error in layoutLoadErrors)
            {
                sb.Append(error.Message + "\r\n");
            }
            MessageBox.Show(sb.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }
}
Public Sub LoadLayout()
    Using reader As XmlReader = XmlReader.Create("wfInstanceId.designer.xml")

        Dim layoutLoadErrors As IList = CType(New ArrayList(), IList)
        Me.LoadDesignerLayout(reader, layoutLoadErrors)

        If layoutLoadErrors.Count > 0 Then
            Dim sb As New System.Text.StringBuilder("Errors:\r\n")
            For Each errorMessage As WorkflowMarkupSerializationException In layoutLoadErrors
                sb.Append(errorMessage.Message + "\r\n")
            Next
            MessageBox.Show(sb.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)

        End If
    End Using
End Sub

적용 대상