Compartilhar via


DataTemplateSelector Classe

Definição

Seleciona um DataTemplate com base no objeto de dados e no contêiner. Substitua OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção.

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
Herança
DataTemplateSelector

Comentários

Os desenvolvedores de aplicativos substituem o OnSelectTemplate(Object, BindableObject) método para retornar um exclusivo DataTemplate para um tipo de dados e uma combinação de contêiner pai. Além disso, como a mesma instância de modelo exata deve ser retornada para uma determinada parte dos dados em chamadas sucessivas para SelectTemplate(Object, BindableObject), os desenvolvedores devem criar e armazená-los DataTemplate em suas substituições de construtor.

Os desenvolvedores devem observar os seguintes itens:

  • OnSelectTemplate não deve retornar outro DataTemplateSelector e :
  • A plataforma Android é limitada a 20 modelos por exibição de lista.:
O exemplo a seguir mostra um uso básico:
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

Nome Description
DataTemplateSelector()

Seleciona um DataTemplate com base no objeto de dados e no contêiner. Substitua OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção.

Propriedades

Nome Description
Bindings

Obtém o dicionário de associações a serem aplicadas a itens de modelo.

(Herdado de DataTemplate)
LoadTemplate

Seleciona um DataTemplate com base no objeto de dados e no contêiner. Substitua OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção.

(Herdado de ElementTemplate)
Values

Obtém o dicionário de valores de propriedade a serem aplicados a itens de modelo.

(Herdado de DataTemplate)

Métodos

Nome Description
CreateContent()

Usado pela infraestrutura XAML para carregar modelos de dados e configurar o conteúdo da interface do usuário resultante.

(Herdado de ElementTemplate)
OnSelectTemplate(Object, BindableObject)

Seleciona um DataTemplate com base no objeto de dados e no contêiner. Substitua OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção.

SelectTemplate(Object, BindableObject)

Retorna um DataTemplate para o item e o contêiner especificados.

SetBinding(BindableProperty, BindingBase)

Define uma associação para uma propriedade em itens de modelo.

(Herdado de DataTemplate)
SetValue(BindableProperty, Object)

Define um valor estático para uma propriedade em itens de modelo.

(Herdado de DataTemplate)

Implantações explícitas de interface

Nome Description
IDataTemplateController.Id

Seleciona um DataTemplate com base no objeto de dados e no contêiner. Substitua OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção.

(Herdado de DataTemplate)
IDataTemplateController.IdString

Seleciona um DataTemplate com base no objeto de dados e no contêiner. Substitua OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção.

(Herdado de DataTemplate)

Métodos de Extensão

Nome Description
CreateContent(DataTemplate, Object, BindableObject)

Seleciona o modelo apropriado e cria seu conteúdo para o item especificado.

SelectDataTemplate(DataTemplate, Object, BindableObject)

Retorna o modelo apropriado, invocando a lógica do seletor se o modelo for um DataTemplateSelector.

SetBinding(DataTemplate, BindableProperty, String)

Cria uma associação no modelo para a propriedade e o caminho especificados.

Aplica-se a