DataTemplateSelector Sınıf

Tanım

DataTemplate Nesneleri veri türüne ve kapsayıcıya göre seçer.

public abstract class DataTemplateSelector : Xamarin.Forms.DataTemplate
type DataTemplateSelector = class
    inherit DataTemplate
Devralma
DataTemplateSelector

Açıklamalar

Uygulama geliştiricileri, veri türü ve üst kapsayıcı bileşimi için benzersiz DataTemplate bir değer döndürmek için yöntemini geçersiz kılarOnSelectTemplate(Object, BindableObject). Ayrıca, 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.

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

DataTemplateSelector()

Varsayılan değerlerle yeni DataTemplateSelector bir oluşturur.

Özellikler

Bindings

Bağlı özellikler tarafından dizine alınan bağlamalar sözlüğü alır.

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

Özelliğine göre dizinlenmiş bu DataTemplateiçin özellik değerlerinin bir sözlüğünü döndürür.

(Devralındığı yer: DataTemplate)

Yöntemler

CreateContent()

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

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

Geliştirici, belirtilen itemiçin geçerli bir veri şablonu döndürmek için bu yöntemi geçersiz kılar. Bu yöntem tarafından SelectTemplate(Object, BindableObject)çağrılır.

SelectTemplate(Object, BindableObject)

çağrısı OnSelectTemplate(Object, BindableObject) yaparak ve sonucunu doğrulayarak için DataTemplateitem değerini döndürür.

SetBinding(BindableProperty, BindingBase)

için propertybağlamayı ayarlar.

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

değerini propertyayarlar.

(Devralındığı yer: DataTemplate)

Belirtik Arabirim Kullanımları

IDataTemplate.LoadTemplate

Yalnızca dahili kullanım içindir.

(Devralındığı yer: ElementTemplate)
IDataTemplateController.Id

DataTemplate Nesneleri veri türüne ve kapsayıcıya göre seçer.

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

DataTemplate Nesneleri veri türüne ve kapsayıcıya göre seçer.

(Devralındığı yer: DataTemplate)

Uzantı Metotları

CreateContent(DataTemplate, Object, BindableObject)

Xamarin.Forms platformu tarafından dahili kullanım için.

SelectDataTemplate(DataTemplate, Object, BindableObject)

Xamarin.Forms platformu tarafından dahili kullanım için.

SetBinding(DataTemplate, BindableProperty, String)

self nesnesini targetProperty ile patholuşturulan yeni Binding bir örneğe bağlar.

Şunlara uygulanır