DataTemplate Kelas

Definisi

Menjelaskan struktur visual objek data.

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
Warisan
Turunan
Atribut

Contoh

Contoh berikut menunjukkan cara membuat sebaris DataTemplate . DataTemplate menentukan bahwa setiap item data muncul sebagai tiga TextBlock elemen dalam StackPanel. Dalam contoh ini, objek data adalah kelas yang disebut Task. Perhatikan bahwa setiap TextBlock elemen dalam templat ini terikat ke properti Task kelas.

<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>

Lebih umum untuk menentukan DataTemplate di bagian sumber daya sehingga dapat menjadi objek yang dapat digunakan kembali, seperti dalam contoh berikut:

<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>

Sekarang Anda dapat menggunakan myTaskTemplate sebagai sumber daya, seperti dalam contoh berikut:

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

Untuk sampel lengkapnya, lihat Pengenalan Sampel Templat Data.

Keterangan

Anda menggunakan DataTemplate untuk menentukan visualisasi objek data Anda. DataTemplate objek sangat berguna ketika Anda mengikat ItemsControl seperti ListBox ke seluruh koleksi. Tanpa instruksi tertentu, menampilkan ListBox representasi string objek dalam koleksi. Dalam hal ini, Anda dapat menggunakan DataTemplate untuk menentukan tampilan objek data Anda. Konten Anda DataTemplate menjadi struktur visual objek data Anda.

Untuk diskusi mendalam, lihat Gambaran Umum Templat Data.

Konstruktor

Nama Deskripsi
DataTemplate()

Menginisialisasi instans baru dari kelas DataTemplate.

DataTemplate(Object)

Menginisialisasi instans DataTemplate baru kelas dengan properti yang ditentukan DataType .

Properti

Nama Deskripsi
DataTemplateKey

Mendapatkan kunci default dari DataTemplate.

DataType

Mendapatkan atau mengatur jenis yang DataTemplate dimaksudkan ini.

Dispatcher

Dispatcher Mendapatkan ini DispatcherObject dikaitkan dengan.

(Diperoleh dari DispatcherObject)
HasContent

Mendapatkan nilai yang menunjukkan apakah templat ini memiliki konten yang dioptimalkan.

(Diperoleh dari FrameworkTemplate)
IsSealed

Mendapatkan nilai yang menunjukkan apakah objek ini dalam status tidak dapat diubah sehingga tidak dapat diubah.

(Diperoleh dari FrameworkTemplate)
Resources

Mendapatkan atau mengatur kumpulan sumber daya yang dapat digunakan dalam cakupan templat ini.

(Diperoleh dari FrameworkTemplate)
Template

Mendapatkan atau mengatur referensi ke objek yang merekam atau memutar simpul XAML untuk templat saat templat ditentukan atau diterapkan oleh penulis.

(Diperoleh dari FrameworkTemplate)
Triggers

Mendapatkan kumpulan pemicu yang menerapkan nilai properti atau melakukan tindakan berdasarkan satu atau beberapa kondisi.

VisualTree

Mendapatkan atau mengatur simpul akar templat.

(Diperoleh dari FrameworkTemplate)

Metode

Nama Deskripsi
CheckAccess()

Menentukan apakah utas panggilan memiliki akses ke ini DispatcherObject.

(Diperoleh dari DispatcherObject)
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
FindName(String, FrameworkElement)

Menemukan elemen yang terkait dengan nama yang ditentukan dalam templat ini.

(Diperoleh dari FrameworkTemplate)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
LoadContent()

Memuat konten templat sebagai instans objek dan mengembalikan elemen akar konten.

(Diperoleh dari FrameworkTemplate)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
RegisterName(String, Object)

Mendaftarkan pasangan nama/objek baru ke dalam cakupan nama saat ini.

(Diperoleh dari FrameworkTemplate)
Seal()

Mengunci templat sehingga tidak dapat diubah.

(Diperoleh dari FrameworkTemplate)
ShouldSerializeResources(XamlDesignerSerializationManager)

Mengembalikan nilai yang menunjukkan apakah proses serialisasi harus menserialisasikan nilai Resources properti pada instans kelas ini.

(Diperoleh dari FrameworkTemplate)
ShouldSerializeVisualTree()

Mengembalikan nilai yang menunjukkan apakah proses serialisasi harus menserialisasikan nilai VisualTree properti pada instans kelas ini.

(Diperoleh dari FrameworkTemplate)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)
UnregisterName(String)

Menghapus pemetaan nama/objek dari namescope XAML.

(Diperoleh dari FrameworkTemplate)
ValidateTemplatedParent(FrameworkElement)

Memeriksa induk yang di-template terhadap sekumpulan aturan.

VerifyAccess()

Memberlakukan bahwa utas panggilan memiliki akses ke ini DispatcherObject.

(Diperoleh dari DispatcherObject)

Implementasi Antarmuka Eksplisit

Nama Deskripsi
INameScope.FindName(String)

Mengembalikan objek yang memiliki nama pengidentifikasi yang disediakan.

(Diperoleh dari FrameworkTemplate)
IQueryAmbient.IsAmbientPropertyAvailable(String)

Mengkueri apakah properti sekitar tertentu tersedia dalam cakupan saat ini.

(Diperoleh dari FrameworkTemplate)

Berlaku untuk

Lihat juga