DataTemplateSelector Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengaktifkan logika pemilihan templat kustom di tingkat aplikasi.
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DataTemplateSelector : IElementFactory
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class DataTemplateSelector : IElementFactory
Public Class DataTemplateSelector
Implements IElementFactory
See Remarks
- Warisan
- Atribut
- Penerapan
Keterangan
Untuk informasi selengkapnya tentang templat data, lihat kelas DataTemplate dan Kontainer dan templat item.
Kelas DataTemplateSelector dasar tidak digunakan sebagai elemen objek di XAML. Namun, ini adalah skenario umum untuk memperoleh DataTemplateSelector kustom, memetakan awalan xmlns untuk kelas kustom dan namespace/assembly-nya, lalu merujuk ke instans kelas kustom seperti yang didefinisikan dalam blok Sumber Daya di XAML. Ini memungkinkan untuk merujuk ke kelas pemilih templat kustom dengan x:Key, dan menggunakan referensi tersebut untuk mengatur nilai properti seperti ItemTemplateSelector dalam templat XAML dan status visual.
Metode DataTemplateSelector yang dapat dipanggil adalah dua overload SelectTemplate . Metode DataTemplateSelector yang dapat diganti adalah dua overload SelectTemplateCore . Untuk menentukan subkelas DataTemplateSelector yang efektif, berikan implementasi untuk SelectTemplateCore(Object) dan SelectTemplateCore(Object, DependencyObject). Semua metode ini mengembalikan instans DataTemplate yang biasanya merupakan pilihan tertentu yang sesuai untuk input metode yang dipanggil untuk mendapatkannya.
Kode aplikasi biasanya tidak memanggil metode SelectTemplate ; metode ada sehingga infrastruktur dapat memanggilnya saat memilih templat yang benar berdasarkan penggunaan instans DataTemplateSelector dari nilai properti seperti ItemsControl.ItemsTemplateSelector.
Misalnya XAML yang mereferensikan DataTemplateSelector kustom sebagai nilai HeaderTemplateSelector , dan contoh kode yang memperlihatkan penimpaan untuk metode HeaderTemplateSelector , lihat Cara mengelompokkan item dalam daftar atau kisi.
Konstruktor
DataTemplateSelector() |
Menginisialisasi instans baru kelas DataTemplateSelector . |
Metode
GetElement(ElementFactoryGetArgs) |
Membuat atau mengambil instans objek UIElement yang ada yang dideklarasikan dalam DataTemplate yang dikembalikan oleh SelectTemplate. |
RecycleElement(ElementFactoryRecycleArgs) |
Mendaur ulang objek UIElement yang dibuat menggunakan GetElement. |
SelectTemplate(Object) |
Mengembalikan DataTemplate tertentu untuk item tertentu. |
SelectTemplate(Object, DependencyObject) |
Mengembalikan DataTemplate tertentu untuk item dan kontainer tertentu. |
SelectTemplateCore(Object) |
Saat diimplementasikan oleh kelas turunan, mengembalikan DataTemplate tertentu untuk item atau kontainer tertentu. |
SelectTemplateCore(Object, DependencyObject) |
Saat diimplementasikan oleh kelas turunan, mengembalikan DataTemplate tertentu untuk item atau kontainer tertentu. |