DataTemplateSelector 類別

定義

依資料類型和容器選取 DataTemplate 物件。

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

備註

應用程式開發人員會覆寫 OnSelectTemplate(Object, BindableObject) 方法,以針對資料類型和父容器組合傳回唯 DataTemplate 一的 。 此外,由於必須針對連續呼叫 SelectTemplate(Object, BindableObject) 的指定資料片段傳回相同的確切範本實例,因此開發人員應該在其建構函式覆寫中建立並儲存這些 DataTemplate 實例。

下列範例顯示基本用途:
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()

使用預設值建立新的 DataTemplateSelector

屬性

Bindings

取得繫結的字典,字典是依繫結的屬性編製索引。

(繼承來源 DataTemplate)
Values

為這個 DataTemplate 傳回依屬性編製索引的屬性值字典。

(繼承來源 DataTemplate)

方法

CreateContent()

由 XAML 基礎結構用來載入資料範本及設定結果 UI 的內容。

(繼承來源 ElementTemplate)
OnSelectTemplate(Object, BindableObject)

開發人員可以覆寫這個方法,以傳回指定 item 的有效資料範本。 這個方法是由 SelectTemplate(Object, BindableObject) 所呼叫。

SelectTemplate(Object, BindableObject)

呼叫 OnSelectTemplate(Object, BindableObject) 並確認其結果,以傳回 itemDataTemplate

SetBinding(BindableProperty, BindingBase)

設定 property 的繫結。

(繼承來源 DataTemplate)
SetValue(BindableProperty, Object)

設定 property 的值。

(繼承來源 DataTemplate)

明確介面實作

IDataTemplate.LoadTemplate

僅供內部使用。

(繼承來源 ElementTemplate)
IDataTemplateController.Id

依資料類型和容器選取 DataTemplate 物件。

(繼承來源 DataTemplate)
IDataTemplateController.IdString

依資料類型和容器選取 DataTemplate 物件。

(繼承來源 DataTemplate)

擴充方法

CreateContent(DataTemplate, Object, BindableObject)

供 Xamarin.Forms 平台內部使用。

SelectDataTemplate(DataTemplate, Object, BindableObject)

供 Xamarin.Forms 平台內部使用。

SetBinding(DataTemplate, BindableProperty, String)

self 物件的 targetProperty 繫結至使用 path 建立的新 Binding 執行個體。

適用於