DataTemplate.DataType 속성

정의

DataTemplate이 사용되는 형식을 가져오거나 설정합니다.

public:
 property System::Object ^ DataType { System::Object ^ get(); void set(System::Object ^ value); };
public object DataType { get; set; }
[System.Windows.Markup.Ambient]
public object DataType { get; set; }
member this.DataType : obj with get, set
[<System.Windows.Markup.Ambient>]
member this.DataType : obj with get, set
Public Property DataType As Object

속성 값

Object

기본값은 null입니다.

특성

설명

이 속성은 클래스의 속성과 TargetType 매우 유사합니다 Style . 이 속성을 지정하지 않고 데이터 형식으로 x:KeyDataTemplate 설정하면 해당 형식의 데이터 개체에 자동으로 적용됩니다. 이렇게 하면 x:Key 암시적으로 설정됩니다. 따라서 이 DataTemplate x:Key 값을 할당하는 경우 암시적 x:Key 값을 재정의 DataTemplate 하고 자동으로 적용되지 않습니다.

또한 개체 ContentControl 컬렉션 TaskContentControl 바인딩하는 경우 자동으로 사용하지 DataTemplate 않습니다. 이는 전체 컬렉션 또는 개별 개체에 ContentControl 바인딩할지 여부를 구분하기 위해 바인딩에 대한 추가 정보가 필요하기 때문입니다. ContentControl 형식 선택을 추적하는 경우 바인딩의 ItemsControl ContentControl 속성을 "/"로 설정 Path 하여 현재 항목에 관심이 있음을 나타낼 수 있습니다. 예를 들어 방법 : 컬렉션에 바인딩하고 선택 영역에 따라 정보를 표시합니다. 그렇지 않으면 속성을 설정 ContentTemplate 하여 명시적으로 지정 DataTemplate 해야 합니다.

DataType 속성은 다른 형식의 데이터 개체가 있는 CompositeCollection 경우에 특히 유용합니다.

이 속성이 기본 네임스페이스에 없는 XML 요소를 대상으로 하는 경우 요소 이름 앞에 네임스페이스 또는 네임스페이스 지정자를 지정해야 합니다. LINQ for XML을 통해 노출되는 XML의 경우 네임스페이스는 중괄호로 표시되고 그 앞에는 중괄호 이스케이프 시퀀스가 표시됩니다.

<DataTemplate DataType="{}{http://myNamespace}Details">  

XPath를 통해 노출되는 XML의 경우 요소 이름 앞에 다음 인스턴스 XmlNamespaceMapping가 설정한 네임스페이스 지정자가 있습니다.

<DataTemplate DataType="mn:Details">  

XAML 특성 사용

<object DataType="typeName"/>  

XAML 값

typeName
템플릿이 개체 데이터를 위한 경우 이 속성에는 데이터 개체의 형식 이름(문자열)이 포함됩니다. 클래스의 형식 이름을 참조하려면 x:Type 태그 확장을 사용합니다. 템플릿이 XML 데이터용인 경우 이 속성에는 XML 요소 이름이 포함됩니다. XML 요소의 기본이 아닌 네임스페이스를 지정하는 방법에 대한 자세한 내용은 설명서 설명을 참조하세요.

적용 대상

추가 정보