다음을 통해 공유


x:XData 내장 XAML 형식

XAML 프로덕션 내에서 XML 데이터 아일랜드를 배치할 수 있습니다. x:XData 내의 XML 요소는 작동하는 기본 XAML 네임스페이스 또는 다른 XAML 네임스페이스의 일부인 것처럼 XAML 프로세서에서 처리해서는 안 됩니다. x:XData 임의의 올바른 형식의 XML을 포함할 수 있습니다.

XAML 개체 요소 사용

<x:XData>
  <elementDataRoot>
    [elementData]
  </elementDataRoot>
</x:XData>

XAML 값

묘사
elementDataRoot 묶은 데이터 섬의 단일 루트 요소입니다. 대부분의 최종 소비자의 경우 단일 루트가 없는 XML은 잘못된 것으로 간주됩니다. 특히 x:XData WPF용 XML 데이터 원본 또는 데이터 바인딩에 XML 원본을 사용하는 다른 많은 기술로 의도된 경우 단일 루트가 필요합니다.
[elementData] 선택적. XML 데이터를 나타내는 XML입니다. 요소 데이터로 여러 요소를 포함할 수 있으며 중첩된 요소는 다른 요소에 포함할 수 있습니다. 그러나 XML의 일반적인 규칙이 적용됩니다.

발언

x:XData 개체 내의 XML 요소는 데이터 내에 포함된 XMLDOM의 가능한 모든 네임스페이스 및 접두사를 다시 선언할 수 있습니다.

.NET XAML Services에서는 XData 클래스를 통해 XML 데이터 및 x:XData 내장 XAML 형식에 프로그래밍 방식으로 액세스할 수 있습니다.

WPF 사용 현황 정보

x:XData 개체는 주로 XmlDataProvider자식 개체로 사용되거나 XmlDataProvider.XmlSerializer 속성의 자식 개체로 사용됩니다(XAML에서는 일반적으로 속성 요소 구문으로 표현됨).

데이터는 일반적으로 데이터 아일랜드 내의 기본 XML 네임스페이스를 새 기본 XML 네임스페이스(빈 문자열로 설정)로 다시 정의해야 합니다. 이는 데이터를 참조하고 바인딩하는 데 사용되는 XPath 식이 접두사를 포함하지 않도록 방지할 수 있기 때문에 간단한 데이터 아일랜드에서 가장 쉽습니다. 더 복잡한 데이터 아일랜드는 데이터에 대한 여러 접두사를 정의하고 루트의 XML 네임스페이스에 특정 접두사를 사용할 수 있습니다. 이 경우 모든 XPath 식 참조에는 적절한 네임스페이스 매핑 접두사를 포함해야 합니다. 자세한 내용은 데이터 바인딩 개요참조하세요.

기술적으로 x:XDataIXmlSerializable형식의 모든 속성의 콘텐츠로 사용할 수 있습니다. 그러나 XmlDataProvider.XmlSerializer 유일한 눈에 띄는 구현입니다.

참고 항목