DataTemplate.DataType Właściwość

Definicja

Pobiera lub ustawia typ, dla którego jest to DataTemplate zamierzone.

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

Wartość właściwości

Object

Wartość domyślna to null.

Atrybuty

Uwagi

Ta właściwość jest bardzo podobna TargetType do właściwości Style klasy . Po ustawieniu tej właściwości na typ danych bez określenia x:Keyelementu , DataTemplate obiekt jest automatycznie stosowany do obiektów danych tego typu. Należy pamiętać, że jeśli to zrobisz, x:Key jest ustawiana niejawnie. W związku z tym, jeśli przypiszesz tę DataTemplate wartość, zastępujesz niejawną x:Key x:Key i nie zostanie ona zastosowana DataTemplate automatycznie.

Należy również pamiętać, że w przypadku powiązania ContentControl obiektu z kolekcją Task obiektów ContentControl obiekt nie jest używany DataTemplate automatycznie. Wynika to z tego, że powiązanie na obiekcie ContentControl wymaga dodatkowych informacji, aby określić, czy chcesz powiązać z całą kolekcją, czy z poszczególnymi obiektami. Jeśli śledzisz ContentControl wybór ItemsControl typu, możesz ustawić Path właściwość ContentControl powiązania na "/", aby wskazać, że interesuje Cię bieżący element. Aby zapoznać się z przykładem, zobacz Jak powiązać z kolekcją i wyświetlić informacje na podstawie zaznaczenia. W przeciwnym razie należy jawnie określić DataTemplate właściwość , ustawiając ContentTemplate właściwość .

Właściwość jest szczególnie przydatna DataType , gdy masz CompositeCollection różne typy obiektów danych.

Jeśli ta właściwość jest przeznaczona dla elementu XML, który nie znajduje się w domyślnej przestrzeni nazw, należy poprzedzić nazwę elementu nazwą przestrzeni nazw lub projektowania przestrzeni nazw. W przypadku kodu XML uwidocznionego za pośrednictwem LINQ for XML przestrzeń nazw jest wyświetlana w nawiasach klamrowych poprzedzonych sekwencją ucieczki nawiasu klamrowego:

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

W przypadku kodu XML uwidocznionego za pośrednictwem programu XPath nazwa elementu jest poprzedzona przez projektator przestrzeni nazw ustanowiony przez wystąpienie XmlNamespaceMappingklasy :

<DataTemplate DataType="mn:Details">  

Użycie atrybutu języka XAML

<object DataType="typeName"/>  

Wartości XAML

Typename
Jeśli szablon jest przeznaczony dla danych obiektu, ta właściwość zawiera nazwę typu obiektu danych (jako ciąg). Aby odwołać się do nazwy typu klasy, użyj rozszerzenia x:Type Markup. Jeśli szablon jest przeznaczony dla danych XML, ta właściwość zawiera nazwę elementu XML. Zapoznaj się z uwagami w dokumentacji, aby uzyskać szczegółowe informacje na temat określania przestrzeni nazw innej niż domyślna dla elementu XML.

Dotyczy

Zobacz też