DataTemplateSelector Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Seleciona a DataTemplate com base no objeto de dados e no contentor. Override 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
Observações
Os programadores de aplicações sobrepõem o OnSelectTemplate(Object, BindableObject) método para devolver uma combinação única DataTemplate de tipo de dado e contentor pai. Além disso, porque a mesma instância template exata deve ser devolvida para um dado dado ao longo de chamadas sucessivas para SelectTemplate(Object, BindableObject), os programadores devem criar e armazenar estas DataTemplate nas suas sobrescrições de construtor.
Os programadores devem ter em conta os seguintes pontos:
- OnSelectTemplate não deve devolver outro DataTemplateSelector, e :
- A plataforma Android está limitada a 20 modelos por visualização de lista.:
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
| Name | Description |
|---|---|
| DataTemplateSelector() |
Seleciona a DataTemplate com base no objeto de dados e no contentor. Override OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção. |
Propriedades
| Name | Description |
|---|---|
| Bindings |
Faz com que o dicionário de ligações se aplique a itens com templates. (Herdado de DataTemplate) |
| LoadTemplate |
Seleciona a DataTemplate com base no objeto de dados e no contentor. Override OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção. (Herdado de ElementTemplate) |
| Values |
Faz com que o dicionário de valores de propriedades se aplique a itens com templates. (Herdado de DataTemplate) |
Métodos
| Name | Description |
|---|---|
| CreateContent() |
Usado pela infraestrutura XAML para carregar templates de dados e configurar o conteúdo da interface resultante. (Herdado de ElementTemplate) |
| OnSelectTemplate(Object, BindableObject) |
Seleciona a DataTemplate com base no objeto de dados e no contentor. Override OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção. |
| SelectTemplate(Object, BindableObject) |
Devolve a DataTemplate pelo artigo e recipiente especificados. |
| SetBinding(BindableProperty, BindingBase) |
Define uma ligação para uma propriedade em itens templateados. (Herdado de DataTemplate) |
| SetValue(BindableProperty, Object) |
Define um valor estático para uma propriedade em itens templateados. (Herdado de DataTemplate) |
Implementações de Interface Explícita
| Name | Description |
|---|---|
| IDataTemplateController.Id |
Seleciona a DataTemplate com base no objeto de dados e no contentor. Override OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção. (Herdado de DataTemplate) |
| IDataTemplateController.IdString |
Seleciona a DataTemplate com base no objeto de dados e no contentor. Override OnSelectTemplate(Object, BindableObject) para implementar a lógica de seleção. (Herdado de DataTemplate) |
Métodos da Extensão
| Name | Description |
|---|---|
| CreateContent(DataTemplate, Object, BindableObject) |
Seleciona o modelo apropriado e cria o seu conteúdo para o item especificado. |
| SelectDataTemplate(DataTemplate, Object, BindableObject) |
Devolve o template apropriado, invocando a lógica do seletor se o template for um DataTemplateSelector. |
| SetBinding(DataTemplate, BindableProperty, String) |
Cria uma ligação no template para a propriedade e o caminho especificados. |