DataTemplate Klasa

Definicja

Opisuje strukturę wizualizacji obiektu danych.Describes the visual structure of a data object.

public ref class DataTemplate : System::Windows::FrameworkTemplate
[System.Windows.Markup.DictionaryKeyProperty("DataTemplateKey")]
public class DataTemplate : System.Windows.FrameworkTemplate
[<System.Windows.Markup.DictionaryKeyProperty("DataTemplateKey")>]
type DataTemplate = class
    inherit FrameworkTemplate
Public Class DataTemplate
Inherits FrameworkTemplate
Dziedziczenie
Pochodne
Atrybuty

Przykłady

Poniższy przykład pokazuje, jak utworzyć DataTemplate wbudowaną.The following example shows how to create a DataTemplate inline. DataTemplateOkreśla, że każdy element danych pojawia się jako trzy TextBlock elementy w StackPanel .The DataTemplate specifies that each data item appears as three TextBlock elements within a StackPanel. W tym przykładzie obiekt danych jest klasą o nazwie Task .In this example, the data object is a class called Task. Należy zauważyć, że każdy TextBlock element w tym szablonie jest powiązany z właściwością Task klasy.Note that each TextBlock element in this template is bound to a property of the Task class.

<ListBox Width="400" Margin="10"
         ItemsSource="{Binding Source={StaticResource myTodoList}}">
   <ListBox.ItemTemplate>
     <DataTemplate>
       <StackPanel>
         <TextBlock Text="{Binding Path=TaskName}" />
         <TextBlock Text="{Binding Path=Description}"/>
         <TextBlock Text="{Binding Path=Priority}"/>
       </StackPanel>
     </DataTemplate>
   </ListBox.ItemTemplate>
 </ListBox>

Jest to bardziej powszechne, aby zdefiniować DataTemplate w sekcji Resources, aby mógł być obiektem wielokrotnego użytku, jak w poniższym przykładzie:It is more common to define a DataTemplate in the resources section so it can be a reusable object, as in the following example:

<Window.Resources>
<DataTemplate x:Key="myTaskTemplate">
  <StackPanel>
    <TextBlock Text="{Binding Path=TaskName}" />
    <TextBlock Text="{Binding Path=Description}"/>
    <TextBlock Text="{Binding Path=Priority}"/>
  </StackPanel>
</DataTemplate>
</Window.Resources>

Teraz można użyć myTaskTemplate jako zasobu, jak w poniższym przykładzie:Now you can use myTaskTemplate as a resource, as in the following example:

<ListBox Width="400" Margin="10"
         ItemsSource="{Binding Source={StaticResource myTodoList}}"
         ItemTemplate="{StaticResource myTaskTemplate}"/>

Pełny przykład można znaleźć w artykule wprowadzenie do danych tworzenia szablonów Sample.For the complete sample, see Introduction to Data Templating Sample.

Uwagi

Możesz użyć, DataTemplate Aby określić wizualizację obiektów danych.You use a DataTemplate to specify the visualization of your data objects. DataTemplateobiekty są szczególnie przydatne w przypadku powiązania ItemsControl takich jak z ListBox całą kolekcją.DataTemplate objects are particularly useful when you are binding an ItemsControl such as a ListBox to an entire collection. Bez określonych instrukcji, a ListBox wyświetla ciąg reprezentacji obiektów w kolekcji.Without specific instructions, a ListBox displays the string representation of the objects in a collection. W takim przypadku można użyć DataTemplate do zdefiniowania wyglądu obiektów danych.In that case, you can use a DataTemplate to define the appearance of your data objects. Zawartość użytkownika DataTemplate zmieni się na strukturę wizualizacji obiektów danych.The content of your DataTemplate becomes the visual structure of your data objects.

Aby uzyskać szczegółowe informacje, zobacz tworzenia szablonów danych — omówienie.For an in-depth discussion, see Data Templating Overview.

Konstruktory

DataTemplate()

Inicjuje nowe wystąpienie klasy DataTemplate.Initializes a new instance of the DataTemplate class.

DataTemplate(Object)

Inicjuje nowe wystąpienie DataTemplate klasy z określoną DataType właściwością.Initializes a new instance of the DataTemplate class with the specified DataType property.

Właściwości

DataTemplateKey

Pobiera domyślny klucz DataTemplate .Gets the default key of the DataTemplate.

DataType

Pobiera lub ustawia typ, dla którego DataTemplate jest przeznaczony.Gets or sets the type for which this DataTemplate is intended.

Dispatcher

Pobiera Dispatcher ten DispatcherObject program jest skojarzony z.Gets the Dispatcher this DispatcherObject is associated with.

(Odziedziczone po DispatcherObject)
HasContent

Pobiera wartość wskazującą, czy ten szablon ma zoptymalizowaną zawartość.Gets a value that indicates whether this template has optimized content.

(Odziedziczone po FrameworkTemplate)
IsSealed

Pobiera wartość wskazującą, czy ten obiekt jest w niezmiennym stanie, dlatego nie można go zmienić.Gets a value that indicates whether this object is in an immutable state so it cannot be changed.

(Odziedziczone po FrameworkTemplate)
Resources

Pobiera lub ustawia kolekcję zasobów, które mogą być używane w ramach zakresu tego szablonu.Gets or sets the collection of resources that can be used within the scope of this template.

(Odziedziczone po FrameworkTemplate)
Template

Pobiera lub ustawia odwołanie do obiektu, który rejestruje lub odtwarza węzły XAML dla szablonu, gdy szablon jest zdefiniowany lub stosowany przez moduł zapisujący.Gets or sets a reference to the object that records or plays the XAML nodes for the template when the template is defined or applied by a writer.

(Odziedziczone po FrameworkTemplate)
Triggers

Pobiera kolekcję wyzwalaczy, które stosują wartości właściwości lub wykonują akcje na podstawie jednego lub większej liczby warunków.Gets a collection of triggers that apply property values or perform actions based on one or more conditions.

VisualTree

Pobiera lub ustawia węzeł główny szablonu.Gets or sets the root node of the template.

(Odziedziczone po FrameworkTemplate)

Metody

CheckAccess()

Określa, czy wątek wywołujący ma dostęp do tego DispatcherObject .Determines whether the calling thread has access to this DispatcherObject.

(Odziedziczone po DispatcherObject)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.Determines whether the specified object is equal to the current object.

(Odziedziczone po Object)
FindName(String, FrameworkElement)

Znajduje element skojarzony z określoną nazwą zdefiniowaną w ramach tego szablonu.Finds the element associated with the specified name defined within this template.

(Odziedziczone po FrameworkTemplate)
GetHashCode()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Odziedziczone po Object)
GetType()

Pobiera Type bieżące wystąpienie.Gets the Type of the current instance.

(Odziedziczone po Object)
LoadContent()

Ładuje zawartość szablonu jako wystąpienie obiektu i zwraca element główny zawartości.Loads the content of the template as an instance of an object and returns the root element of the content.

(Odziedziczone po FrameworkTemplate)
MemberwiseClone()

Tworzy skróconą kopię bieżącego elementu Object .Creates a shallow copy of the current Object.

(Odziedziczone po Object)
RegisterName(String, Object)

Rejestruje nową parę nazw/obiektów w bieżącym zakresie nazw.Registers a new name/object pair into the current name scope.

(Odziedziczone po FrameworkTemplate)
Seal()

Blokuje szablon, dlatego nie można go zmienić.Locks the template so it cannot be changed.

(Odziedziczone po FrameworkTemplate)
ShouldSerializeResources(XamlDesignerSerializationManager)

Zwraca wartość wskazującą, czy procesy serializacji powinny serializować wartość Resources właściwości w wystąpieniach tej klasy.Returns a value that indicates whether serialization processes should serialize the value of the Resources property on instances of this class.

(Odziedziczone po FrameworkTemplate)
ShouldSerializeVisualTree()

Zwraca wartość wskazującą, czy procesy serializacji powinny serializować wartość VisualTree właściwości w wystąpieniach tej klasy.Returns a value that indicates whether serialization processes should serialize the value of the VisualTree property on instances of this class.

(Odziedziczone po FrameworkTemplate)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)
UnregisterName(String)

Usuwa mapowanie nazw/obiektów z namescope XAML.Removes a name/object mapping from the XAML namescope.

(Odziedziczone po FrameworkTemplate)
ValidateTemplatedParent(FrameworkElement)

Sprawdza szablon nadrzędny względem zestawu reguł.Checks the templated parent against a set of rules.

VerifyAccess()

Wymusza, że wątek wywołujący ma dostęp do tego DispatcherObject .Enforces that the calling thread has access to this DispatcherObject.

(Odziedziczone po DispatcherObject)

Jawne implementacje interfejsu

INameScope.FindName(String)

Zwraca obiekt, który ma podaną nazwę identyfikującą.Returns an object that has the provided identifying name.

(Odziedziczone po FrameworkTemplate)
IQueryAmbient.IsAmbientPropertyAvailable(String)

Pyta, czy określona właściwość otoczenia jest dostępna w bieżącym zakresie.Queries whether a specified ambient property is available in the current scope.

(Odziedziczone po FrameworkTemplate)

Dotyczy

Zobacz też