DataTemplateSelector Sınıf

Tanım

Veri nesnesine ve kapsayıcıya göre bir DataTemplate seçer. Seçim mantığını uygulamak için geçersiz kılın OnSelectTemplate(Object, BindableObject) .

public ref class DataTemplateSelector abstract : Microsoft::Maui::Controls::DataTemplate
public abstract class DataTemplateSelector : Microsoft.Maui.Controls.DataTemplate
type DataTemplateSelector = class
    inherit DataTemplate
Public MustInherit Class DataTemplateSelector
Inherits DataTemplate
Devralma
DataTemplateSelector

Açıklamalar

Uygulama geliştiricileri, bir veri türü ve üst kapsayıcı bileşimi için benzersiz DataTemplate döndürmek için yöntemini geçersiz kılarOnSelectTemplate(Object, BindableObject). Ayrıca, öğesine yapılan ardışık çağrılarda SelectTemplate(Object, BindableObject)belirli bir veri parçası için aynı şablon örneğinin döndürülmesi gerektiğinden, geliştiriciler bunları DataTemplate oluşturucu geçersiz kılmalarında oluşturup depolamalıdır.

Geliştiriciler aşağıdaki öğelere dikkat etmelidir:

  • OnSelectTemplate başka bir DataTemplateSelector döndürmemelidir ve :
  • Android platformu, liste görünümü başına 20 şablonla sınırlıdır.:
Aşağıdaki örnekte temel kullanım gösterilmektedir:
class MyDataTemplateSelector : DataTemplateSelector
{
    public MyDataTemplateSelector ()
    {
        // Retain instances
        this.templateOne = new DataTemplate (typeof (ViewA));
        this.templateTwo = new DataTemplate (typeof (ViewB));
    }

    protected override DataTemplate OnSelectTemplate (object item, BindableObject container)
    {
        if (item is double)
            return this.templateOne;
        return this.templateTwo;
    }

    private readonly DataTemplate templateOne;
    private readonly DataTemplate templateTwo;
}

Oluşturucular

Name Description
DataTemplateSelector()

Veri nesnesine ve kapsayıcıya göre bir DataTemplate seçer. Seçim mantığını uygulamak için geçersiz kılın OnSelectTemplate(Object, BindableObject) .

Özellikler

Name Description
Bindings

Şablonlu öğelere uygulanacak bağlamaların sözlüğünü alır.

(Devralındığı yer: DataTemplate)
LoadTemplate

Veri nesnesine ve kapsayıcıya göre bir DataTemplate seçer. Seçim mantığını uygulamak için geçersiz kılın OnSelectTemplate(Object, BindableObject) .

(Devralındığı yer: ElementTemplate)
Values

Şablonlu öğelere uygulanacak özellik değerlerinin sözlüğünü alır.

(Devralındığı yer: DataTemplate)

Yöntemler

Name Description
CreateContent()

Veri şablonlarını yüklemek ve sonuçta elde edilen kullanıcı arabiriminin içeriğini ayarlamak için XAML altyapısı tarafından kullanılır.

(Devralındığı yer: ElementTemplate)
OnSelectTemplate(Object, BindableObject)

Veri nesnesine ve kapsayıcıya göre bir DataTemplate seçer. Seçim mantığını uygulamak için geçersiz kılın OnSelectTemplate(Object, BindableObject) .

SelectTemplate(Object, BindableObject)

Belirtilen öğe ve kapsayıcı için bir DataTemplate döndürür.

SetBinding(BindableProperty, BindingBase)

Şablonlu öğelerdeki bir özellik için bağlama ayarlar.

(Devralındığı yer: DataTemplate)
SetValue(BindableProperty, Object)

Şablonlu öğelerdeki bir özellik için statik bir değer ayarlar.

(Devralındığı yer: DataTemplate)

Belirtik Arabirim Kullanımları

Name Description
IDataTemplateController.Id

Veri nesnesine ve kapsayıcıya göre bir DataTemplate seçer. Seçim mantığını uygulamak için geçersiz kılın OnSelectTemplate(Object, BindableObject) .

(Devralındığı yer: DataTemplate)
IDataTemplateController.IdString

Veri nesnesine ve kapsayıcıya göre bir DataTemplate seçer. Seçim mantığını uygulamak için geçersiz kılın OnSelectTemplate(Object, BindableObject) .

(Devralındığı yer: DataTemplate)

Uzantı Metotları

Name Description
CreateContent(DataTemplate, Object, BindableObject)

Uygun şablonu seçer ve belirtilen öğe için içeriğini oluşturur.

SelectDataTemplate(DataTemplate, Object, BindableObject)

Şablon bir DataTemplateSelectorise seçici mantığını çağırarak uygun şablonu döndürür.

SetBinding(DataTemplate, BindableProperty, String)

Belirtilen özellik ve yol için şablonda bir bağlama oluşturur.

Şunlara uygulanır