Поделиться через


DataTemplateSelector Класс

Определение

Выбирает объекты DataTemplate по типу данных и контейнеру.

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
Наследование
DataTemplateSelector

Комментарии

Разработчики приложений OnSelectTemplate(Object, BindableObject) переопределяют метод , чтобы вернуть уникальное DataTemplate сочетание типа данных и родительского контейнера. Кроме того, так как один и тот же точный экземпляр шаблона должен возвращаться для определенного фрагмента данных при последовательных вызовах SelectTemplate(Object, BindableObject), разработчикам следует создавать и хранить их DataTemplate в переопределениях конструктора.

Разработчикам следует обратить внимание на следующие моменты:

  • OnSelectTemplate не должен возвращать другой объект DataTemplateSelector и :
  • Платформа Android ограничена 20 шаблонами для каждого представления списка.
В следующем примере показано базовое использование:
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;
}

Конструкторы

DataTemplateSelector()

Выбирает объекты DataTemplate по типу данных и контейнеру.

Свойства

Bindings

Получает словарь привязок, индексированный по связанным свойствам.

(Унаследовано от DataTemplate)
LoadTemplate

Выбирает объекты DataTemplate по типу данных и контейнеру.

(Унаследовано от ElementTemplate)
Values

Возвращает словарь значений свойства для DataTemplate, индексированный по свойству.

(Унаследовано от DataTemplate)

Методы

CreateContent()

Используется инфраструктурой XAML для загрузки шаблонов данных и настройки содержимого итогового пользовательского интерфейса.

(Унаследовано от ElementTemplate)
OnSelectTemplate(Object, BindableObject)

Выбирает объекты DataTemplate по типу данных и контейнеру.

SelectTemplate(Object, BindableObject)

Возвращает шаблон DataTemplate для item, вызывая метод OnSelectTemplate(Object, BindableObject) и проверяя его результат.

SetBinding(BindableProperty, BindingBase)

Задает привязку для property.

(Унаследовано от DataTemplate)
SetValue(BindableProperty, Object)

Задает значение property.

(Унаследовано от DataTemplate)

Явные реализации интерфейса

IDataTemplateController.Id

Выбирает объекты DataTemplate по типу данных и контейнеру.

(Унаследовано от DataTemplate)
IDataTemplateController.IdString

Выбирает объекты DataTemplate по типу данных и контейнеру.

(Унаследовано от DataTemplate)

Методы расширения

CreateContent(DataTemplate, Object, BindableObject)

Для внутреннего использования платформой Microsoft.Maui.Controls.

SelectDataTemplate(DataTemplate, Object, BindableObject)

Для внутреннего использования платформой Microsoft.Maui.Controls.

SetBinding(DataTemplate, BindableProperty, String)

Привязывает targetProperty объекта self к новому экземпляру Binding, который был создан с помощью path.

Применяется к