XamlXmlWriter 클래스

정의

TextWriter 또는 XmlWriter 지원 클래스를 사용하여 XAML 노드 스트림을 텍스트 또는 태그 serialize된 양식에 씁니다.

public ref class XamlXmlWriter : System::Xaml::XamlWriter
public class XamlXmlWriter : System.Xaml.XamlWriter
type XamlXmlWriter = class
    inherit XamlWriter
Public Class XamlXmlWriter
Inherits XamlWriter
상속
XamlXmlWriter

설명

이 클래스는 serialization 시나리오에서 일반적으로 사용 됩니다.

XamlXmlWriter를 사용 하는 방법

XamlWriter API에 다양 한 유형의 XAML 노드를 작성 하는 몇 가지 방법이 있습니다. 종합적으로 이러한 라고 설명서에는 Write 의 메서드는 XamlWriter합니다. XamlXmlWriter 때 수행할 작업을 결정 하려면 몇 가지 내부 상태 클래스를 사용 중 해당 Write 구현이 호출 됩니다. Write 호출 상태를 사용 하 여 여부 요청 된 요소, 특성 또는 값을 작성할 수 있습니다, 또는 예외가 throw 되는 여부를 결정 합니다. 예를 들어, 호출 하는 경우 WriteEndObject 의 상태는 XamlXmlWriter 현재 노드 위치는 값 또는 멤버 내에서 예외가 throw 됩니다. 일반적으로 호출자는 XamlXmlWriter API는 XAML 판독기 및 XAML 노드 스트림을에서 오는 현재 XAML 노드의 형식을 알고 있어야 합니다. 이 기술에 따라 호출자에 게 호출 하지 않아야 Write 현재 노드 형식에 관련 되지 않은 Api.

XAML 네임 스페이스 및 XamlXmlWriter

동작을 작성 하는 XAML 네임 스페이스 XamlXmlWriter 에 대 한 명시적 호출으로만 제한 되지 않고 복잡 한 WriteNamespace합니다. 대신 다른 Write 와 같은 호출 WriteStartObject, 노드 구조에서 특정 지점에 작성 하는 네임 스페이스 선언이 필요할 수 있습니다. XAML 작성기 자체 논리를 통해 접두사를 생성 하거나 정보를 사용 하는 INamespacePrefixLookup 기본 접두사를 확인 하는 서비스입니다. 또한 명시적 WriteNamespace 호출 연기할 수 있습니다 또는 아무 것도 반환할 수 있습니다 XAML 네임 스페이스 선언이 면 이미 선언 하 고 해당 다른 곳에서.

메서드가 예외를 작성 합니다.

throw 된 예외는 XamlXmlWriterWrite 메서드는 일반적으로 하나 InvalidOperationException 또는 XamlXmlWriterException합니다.

InvalidOperationException XAML 판독기를 XAML 노드 스트림에 잘못 된 노드 구조를 전달 되도록 나타내는 경우가 많습니다. 이 경우 노드 구조 올바르지 않은 경우의 XAML 스키마 또는 XAML 스키마 컨텍스트를 유효성 검사에 관련 되지 않은 이유입니다. 대신, 노드 스트림에서 기본 형태로 올바르지 않습니다. 예를 들어, 잘못 된 XAML 판독기 구현에는 두 개의 연속를 포함 하는 XAML 노드 스트림을 생성 하는 경우 StartObject 노드를 두 번째 호출 하려는 시도가 WriteStartObject throw는 InvalidOperationException합니다. 모든 XAML 작성기에는 이러한 작업을을 유효 하지 않게는 것이 좋습니다. 또 다른 예는 InvalidOperationException XAML 네임 스페이스 정보를 현재 노드 스트림 위치에 적용 되는 XAML 스키마 컨텍스트를 통해 사용할 수 없는 경우.

XamlXmlWriterException 예외는 의도 한 기능을 기반으로 예외를 throw 하려면이 특정 XAML 작성기 구현 선택 하는 위치를 나타냅니다. A XamlXmlWriterException 특정 한 경우를 나타낼 수 있습니다 위치를 XamlXmlWriter 자체 상태나 설정을 위반 합니다. 예를 들어를 XamlXmlWriterException 위치에 XAML 네임 스페이스 정보 쓰기 시도로 인해 발생할 수는 XamlXmlWriter serialization 형식이 하지 지원 또는 중복 된 멤버를 작성 경우 인스턴스의 XamlXmlWriterSettings 금지 합니다.

생성자

XamlXmlWriter(Stream, XamlSchemaContext)

스트림에서 XamlXmlWriter 클래스의 새 인스턴스를 초기화합니다.

XamlXmlWriter(Stream, XamlSchemaContext, XamlXmlWriterSettings)

작성기 설정 개체를 사용하여 스트림에서 XamlXmlWriter 클래스의 새 인스턴스를 초기화합니다.

XamlXmlWriter(TextWriter, XamlSchemaContext)

XamlXmlWriter 기초에서 TextWriter 클래스의 새 인스턴스를 초기화합니다.

XamlXmlWriter(TextWriter, XamlSchemaContext, XamlXmlWriterSettings)

설정 개체를 사용하여 XamlXmlWriter 기초에서 TextWriter 클래스의 새 인스턴스를 초기화합니다.

XamlXmlWriter(XmlWriter, XamlSchemaContext)

XamlXmlWriter 기초에서 XmlWriter 클래스의 새 인스턴스를 초기화합니다.

XamlXmlWriter(XmlWriter, XamlSchemaContext, XamlXmlWriterSettings)

설정 개체를 사용하여 XamlXmlWriter 기초에서 XmlWriter 클래스의 새 인스턴스를 초기화합니다.

속성

IsDisposed

Dispose(Boolean)가 호출되었는지 여부를 가져옵니다.

(다음에서 상속됨 XamlWriter)
SchemaContext

XamlXmlWriter가 처리에 사용하는 XAML 스키마 컨텍스트를 가져옵니다.

Settings

XamlXmlWriter가 XAML 처리에 사용하는 작성기 설정을 가져옵니다.

메서드

Close()

XAML 작성기 개체를 닫습니다.

(다음에서 상속됨 XamlWriter)
Dispose(Boolean)

XamlXmlWriter에서 사용하는 관리되지 않는 리소스를 해제하고, 관리되는 리소스를 선택적으로 해제합니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
Flush()

기본 XmlWriter 또는 TextWriterFlush 메서드를 호출합니다. 이 메서드는 현재 버퍼에 있는 모든 내용을 쓴 후에 작성기를 닫습니다.

GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
WriteEndMember()

내부 XmlWriter 또는 TextWriter에 XAML 끝 멤버 노드를 씁니다. XAML 노드 스트림의 현재 위치가 멤버 내에 없거나 내부 작성기 상태가 끝 멤버에 쓰는 작업을 지원하지 않으면 예외를 throw합니다.

WriteEndObject()

기본 XmlWriter 또는 TextWriter에 XAML 끝 개체 노드를 씁니다. 처리되는 XAML 노드 스트림의 현재 위치가 끝 개체 쓰기와 호환되지 않으면 예외를 throw합니다.

WriteGetObject()

지정된 개체가 입력 XAML 노드 집합에서 개체 값으로 지정되는 것이 아니라 기본값이거나 쓰고 있는 속성의 암시적인 값인 경우에 개체를 씁니다.

WriteNamespace(NamespaceDeclaration)

기본 XmlWriter 또는 TextWriter에 네임스페이스 정보를 씁니다. 특정 상태에 대해 예외를 throw할 수도 있지만, 그 대신에 작성기 및 처리 중인 XAML 노드 스트림이 XAML 네임스페이스 선언을 삽입할 수 있는 위치에 도달할 때까지 네임스페이스 정보 쓰기를 지연할 수 있습니다.

WriteNode(XamlReader)

XAML 판독기(NodeType)의 노드 형식을 기반으로 전환을 수행하고 작성기 구현을 위한 관련 Write 메서드를 호출합니다.

(다음에서 상속됨 XamlWriter)
WriteStartMember(XamlMember)

기본 XmlWriter 또는 TextWriter에 XAML 시작 멤버 노드를 씁니다. XAML 노드 스트림의 현재 위치가 다른 멤버 내에 있거나 시작 멤버를 쓸 수 있는 범위나 작성기 상태에 있지 않으면 예외를 throw합니다.

WriteStartObject(XamlType)

기본 XmlWriter 또는 TextWriter에 XAML 시작 개체 노드를 씁니다. XAML 노드 스트림의 현재 위치가 시작 개체를 쓸 수 있는 범위에 없거나 작성기가 시작 개체를 쓸 수 있는 상태에 있지 않으면 예외를 throw합니다.

WriteValue(Object)

기본 XmlWriter 또는 TextWriter에 XAML 값 노드를 씁니다. XAML 노드 스트림의 현재 위치가 값을 쓰기에 올바른 위치가 아니거나 작성기가 값을 쓸 수 없는 상태에 있으면 예외를 throw합니다.

명시적 인터페이스 구현

IDisposable.Dispose()

Dispose()을 참조하세요.

(다음에서 상속됨 XamlWriter)

적용 대상

추가 정보