DataTemplate.DataType Vlastnost

Definice

Získá nebo nastaví typ, pro který je určen 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

Hodnota vlastnosti

Object

Výchozí hodnota je null.

Atributy

Poznámky

Tato vlastnost je velmi podobná TargetType vlastnosti Style třídy. Když tuto vlastnost nastavíte na datový typ bez zadání x:Key, DataTemplate automaticky se použije na datové objekty tohoto typu. Všimněte si, že když to uděláte x:Key implicitně, nastaví se. Proto pokud tuto DataTemplate x:Key hodnotu přiřadíte, přepíšete implicitní x:Key hodnotu a DataTemplate automaticky se nepoužije.

Všimněte si také, že pokud vytváříte vazbu ContentControl na kolekci Task objektů, ContentControl nepoužívá se DataTemplate automaticky. Důvodem je to, že vazba na ContentControl základě potřeby potřebuje více informací k rozlišení, jestli chcete vytvořit vazbu na celou kolekci nebo jednotlivé objekty. Pokud sledujete ContentControl výběr ItemsControl typu, můžete vlastnost ContentControl vazby nastavit Path na "/", která označuje, že vás zajímá aktuální položka. Příklad najdete v tématu Postupy: Vytvoření vazby k kolekci a zobrazení informací na základě výběru. V opačném případě je nutné explicitně zadat DataTemplate nastavením ContentTemplate vlastnosti.

Vlastnost DataType je zvlášť užitečná, pokud máte CompositeCollection různé typy datových objektů.

Pokud tato vlastnost cílí na element XML, který není ve výchozím oboru názvů, musíte před název elementu zadat obor názvů nebo designátor oboru názvů. Pro XML vystavený prostřednictvím LINQ for XML se obor názvů zobrazí ve složených závorkách, před kterou následuje řídicí sekvence závorek:

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

U XML vystavených prostřednictvím XPathu předchází název elementu designátor oboru názvů vytvořený instancí XmlNamespaceMapping:

<DataTemplate DataType="mn:Details">  

Použití atributu XAML

<object DataType="typeName"/>  

Hodnoty XAML

Typename
Pokud je šablona určena pro data objektu, tato vlastnost obsahuje název typu datového objektu (jako řetězec). Pokud chcete odkazovat na název typu třídy, použijte rozšíření x:Type Markup Extension. Pokud je šablona určena pro data XML, tato vlastnost obsahuje název elementu XML. Podrobnosti o zadání jiného než výchozího oboru názvů pro element XML najdete v poznámkách k dokumentaci.

Platí pro

Viz také