Compartilhar via


DataTemplate.DataType Propriedade

Definição

Obtém ou define o tipo para o qual esse DataTemplate foi projetado.

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

Valor da propriedade

O valor padrão é null.

Atributos

Comentários

Essa propriedade é muito semelhante à TargetType propriedade da Style classe . Quando você define essa propriedade como o tipo de dados sem especificar um x:Key, o DataTemplate é aplicado automaticamente a objetos de dados desse tipo. Observe que quando você faz isso, o x:Key é definido implicitamente. Portanto, se você atribuir um x:Key valor a esse DataTemplate valor, você está substituindo o implícito x:Key e o DataTemplate não será aplicado automaticamente.

Observe também que, se você estiver associando um ContentControl a uma coleção de Task objetos, o ContentControl não usará o DataTemplate automaticamente. Isso ocorre porque a associação em um ContentControl precisa de mais informações para distinguir se você deseja associar a uma coleção inteira ou aos objetos individuais. Se estiver ContentControl acompanhando a seleção de um ItemsControl tipo, você poderá definir a Path propriedade da ContentControl associação como "/" para indicar que está interessado no item atual. Para obter um exemplo, consulte Como associar a uma coleção e exibir informações com base na seleção. Caso contrário, você precisará especificar o DataTemplate explicitamente definindo a ContentTemplate propriedade .

A DataType propriedade é particularmente útil quando você tem um CompositeCollection de diferentes tipos de objetos de dados.

Se essa propriedade for direcionada a um elemento XML que não esteja no namespace padrão, você deverá preceder o nome do elemento com o namespace ou um designador de namespace. Para XML exposto por meio do LINQ for XML, o namespace aparece em chaves, precedida por uma sequência de escape de chave:

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

Para XML exposto por meio do XPath, o nome do elemento é precedido por um designador de namespace estabelecido por uma instância de XmlNamespaceMapping:

<DataTemplate DataType="mn:Details">  

Uso do Atributo XAML

<object DataType="typeName"/>  

Valores XAML

typeName
Se o modelo for destinado a dados de objeto, essa propriedade conterá o nome do tipo do objeto de dados (como uma cadeia de caracteres). Para fazer referência ao nome do tipo da classe, use a Extensão de Marcação x:Type. Se o modelo for destinado a dados XML, essa propriedade conterá o nome do elemento XML. Confira os comentários da documentação para obter detalhes sobre como especificar um namespace não padrão para o elemento XML.

Aplica-se a

Confira também