DataTemplateSelector DataTemplateSelector Class

Definição

Seleciona objetos DataTemplate por tipo de dados e contêiner.Selects DataTemplate objects by data type and container.

public abstract class DataTemplateSelector : Xamarin.Forms.DataTemplate
type DataTemplateSelector = class
    inherit DataTemplate
Herança

Comentários

Os desenvolvedores de aplicativos substituem a OnSelectTemplate(Object, BindableObject) método para retornar um único DataTemplate para uma combinação do contêiner pai e o tipo de dados.Application developers override the OnSelectTemplate(Object, BindableObject) method to return a unique DataTemplate for a data type and parent container combination. Além disso, porque o mesmo instância de modelo deve ser retornada para uma determinada parte dos dados em sucessivas chamadas a SelectTemplate(Object, BindableObject), os desenvolvedores devem criar e armazenar esses DataTemplate em seu construtor substitui.Additionally, because the same exact template instance must be returned for a given piece of data across successive calls to SelectTemplate(Object, BindableObject), developers should create and store these DataTemplate in their constructor overrides.

Os desenvolvedores devem observar os seguintes itens:Developers should note the following items:
  • OnSelectTemplate não deve retornar DataTemplateSelector outro, eOnSelectTemplate must not return another DataTemplateSelector, and
  • A plataforma Android é limitada a 20 modelos por modo de exibição de lista.The Android platform is limited to 20 templates per list view.
O exemplo a seguir mostra um uso básico:The following example shows a basic use:
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;
}

Construtores

DataTemplateSelector() DataTemplateSelector()

Cria um novo DataTemplateSelector com valores padrão.Creates a new DataTemplateSelector with default values.

Métodos

CreateContent() CreateContent()

Usado pela infraestrutura XAML para carregar modelos de dados e configurar o conteúdo da interface do usuário resultante.Used by the XAML infrastructure to load data templates and set up the content of the resulting UI.

(Inherited from ElementTemplate)
OnSelectTemplate(Object, BindableObject) OnSelectTemplate(Object, BindableObject)

O desenvolvedor substitui esse método para retornar um modelo de dados válido para o item especificado.The developer overrides this method to return a valid data template for the specified item. Este método é chamado por SelectTemplate(Object, BindableObject).This method is called by SelectTemplate(Object, BindableObject).

SelectTemplate(Object, BindableObject) SelectTemplate(Object, BindableObject)

Retorna um DataTemplate para item chamando OnSelectTemplate(Object, BindableObject) e verificando seu resultado.Returns a DataTemplate for item by calling OnSelectTemplate(Object, BindableObject) and verifying its result.

SetBinding(BindableProperty, BindingBase) SetBinding(BindableProperty, BindingBase)

Define a associação para property.Sets the binding for property.

(Inherited from DataTemplate)
SetValue(BindableProperty, Object) SetValue(BindableProperty, Object)

Define o valor de property.Sets the value of property.

(Inherited from DataTemplate)

Propriedades

Bindings Bindings

Obtém um dicionário de associações, indexado pelas propriedades associadas.Gets a dictionary of bindings, indexed by the bound properties.

(Inherited from DataTemplate)
IDataTemplate.LoadTemplate IDataTemplate.LoadTemplate

Somente para uso interno.For internal use only.

(Inherited from ElementTemplate)
IDataTemplateController.Id IDataTemplateController.Id Inherited from DataTemplate
IDataTemplateController.IdString IDataTemplateController.IdString Inherited from DataTemplate
Values Values

Retorna um dicionário de valores de propriedade para este DataTemplate, indexado por propriedade.Returns a dictionary of property values for this DataTemplate, indexed by property.

(Inherited from DataTemplate)

Extension Methods

CreateContent(DataTemplate, Object, BindableObject) CreateContent(DataTemplate, Object, BindableObject)

For internal use by the Xamarin.Forms platform.

SelectDataTemplate(DataTemplate, Object, BindableObject) SelectDataTemplate(DataTemplate, Object, BindableObject)

For internal use by the Xamarin.Forms platform.

SetBinding(DataTemplate, BindableProperty, String) SetBinding(DataTemplate, BindableProperty, String)

Associa o targetProperty do objeto self a uma nova Binding instância que foi criada com path.Binds the self object's targetProperty to a new Binding instance that was created with path.

Aplica-se a