x:Array 태그 확장
업데이트: 2007년 11월
XAML의 개체 배열에 대한 일반적인 지원 기능을 제공합니다.
XAML 개체 요소 사용
<object>
<object.property>
<x:Array Type="typeName">
<arrayObject1/>
<arrayObject2/>
...
</x:Array>
</object.property>
<object>
XAML 값
typeName |
x:Array에 포함되는 형식의 이름이며 일반적으로 접두사가 필요합니다. 설명 부분을 참조하십시오. |
arrayObject1, arrayObject2 등입니다. |
배열의 콘텐츠를 정의하는 개체 요소입니다. 설명 부분을 참조하십시오. |
설명
Type은 모든 x:Array 개체 요소의 필수 특성입니다.
WPF XAML 프로세서 구현에서 이 태그 확장에 대한 처리는 ArrayExtension 클래스를 통해 정의됩니다. 이 클래스는 sealed 클래스가 아니며 사용자 지정 배열 형식에 대한 태그 확장 구현의 기본으로 사용될 수 있습니다.
x:Array는 XAML의 일반 언어 확장에 주로 사용됩니다. 그러나 x:Array는 XAML을 사용하여 일반 컬렉션 지원 인터페이스 또는 클래스를 구조화된 속성 콘텐츠로 사용하는 특정 속성(예: IEnumerable)을 채우는 데도 유용합니다.
일반적으로 x:Array를 채우는 개체 요소는 WPF XML 네임스페이스에 포함된 요소가 아니기 때문에 접두사 매핑이 필요합니다.
예를 들어 다음은 문자열 두 개를 포함하고 배열 수준에 sys 접두사와 x가 정의된 간단한 배열입니다.
[xaml]
<x:Array Type="sys:String" xmlns:x=https://schemas.microsoft.com/winfx/2006/xaml
xmlns:sys="clr-namespace:System;assembly=mscorlib">
<sys:String>Hello</sys:String>
<sys:String>World</sys:String>
</x:Array>
자세한 내용은 태그 확장 및 XAML 및 XAML 네임스페이스 및 네임스페이스 매핑을 참조하십시오. 배열 요소는 XAML에서 개체 요소로 인스턴스화되기 위한 요구 사항도 지원해야 합니다. 자세한 내용은 XAML 및 사용자 지정 클래스를 참조하십시오.
x:Array는 태그 확장입니다. 태그 확장은 특성 값을 리터럴 값 또는 처리기 이름이 아닌 다른 값이 되도록 이스케이프해야 하고 이를 위해 특정 형식 또는 속성에 형식 변환기를 배치하는 것보다 더 전역적인 방법을 사용해야 하는 경우에 일반적으로 구현됩니다. x:Array는 특성 값 처리 대안을 제공하는 대신 내부 텍스트 콘텐츠의 처리 대안을 제공하기 때문에 예외적으로 x:Array에는 이와 같은 일반적인 규칙이 적용되지 않습니다. 이 태그 확장을 사용하면 기존 콘텐츠 모델을 통해 지원할 수 없는 요소 클래스를 배열로 그룹화한 후 이 명명된 배열에 액세스하고 배열 메서드 호출을 통해 개별 배열 항목을 가져오는 방법으로 나중에 이 요소 클래스를 코드 숨김에서 참조할 수 있습니다.
XAML의 모든 태그는 태그의 특성 구문에 { 및 } 문자를 사용하며 여기서 특성 구문은 XAML 프로세서에 태그 확장이 특성을 처리해야 한다는 것을 인식하는 규칙입니다. 일반적인 태그 확장에 대한 자세한 내용은 태그 확장 및 XAML을 참조하십시오.