다음을 통해 공유


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>

자세한 내용은 태그 확장 및 XAMLXAML 네임스페이스 및 네임스페이스 매핑을 참조하십시오. 배열 요소는 XAML에서 개체 요소로 인스턴스화되기 위한 요구 사항도 지원해야 합니다. 자세한 내용은 XAML 및 사용자 지정 클래스를 참조하십시오.

x:Array는 태그 확장입니다. 태그 확장은 특성 값을 리터럴 값 또는 처리기 이름이 아닌 다른 값이 되도록 이스케이프해야 하고 이를 위해 특정 형식 또는 속성에 형식 변환기를 배치하는 것보다 더 전역적인 방법을 사용해야 하는 경우에 일반적으로 구현됩니다. x:Array는 특성 값 처리 대안을 제공하는 대신 내부 텍스트 콘텐츠의 처리 대안을 제공하기 때문에 예외적으로 x:Array에는 이와 같은 일반적인 규칙이 적용되지 않습니다. 이 태그 확장을 사용하면 기존 콘텐츠 모델을 통해 지원할 수 없는 요소 클래스를 배열로 그룹화한 후 이 명명된 배열에 액세스하고 배열 메서드 호출을 통해 개별 배열 항목을 가져오는 방법으로 나중에 이 요소 클래스를 코드 숨김에서 참조할 수 있습니다.

XAML의 모든 태그는 태그의 특성 구문에 { 및 } 문자를 사용하며 여기서 특성 구문은 XAML 프로세서에 태그 확장이 특성을 처리해야 한다는 것을 인식하는 규칙입니다. 일반적인 태그 확장에 대한 자세한 내용은 태그 확장 및 XAML을 참조하십시오.

참고 항목

개념

스타일 지정 및 템플릿

XAML 개요

태그 확장 및 XAML