TemplateProperty
TemplateProperty
は.uxml上にTemplate
として追加されている要素とViewクラスを紐づけるためのPropertyです。
Viewクラスに宣言することで、SourceGeneratorが宣言されたTemplateProperty
を収集します。Template
についてはこちらを参照してください。
宣言の方法
BindableProperty
と同様にTemplateProperty<T>.Create()
を呼び出すことで宣言ができます。<T>
は指定するViewの型を設定してください。
csharp
private static readonly TemplateProperty<CounterTemplate> TemplateViewProperty = TemplateProperty<CounterTemplate>.Create(
TemplateInfoList.ChildVmTemplate
);
Parameters
TemplateProperty<T>.Create()
は次のパラメータを指定することができます。
パラメータ | 型 | 必須 | 初期値 |
---|---|---|---|
templateInfo | TemplateInfo | yes | - |
- templateInfo
.uxml上に宣言されたTemplate
を指定するためのパラメータです。
.uxml上に宣言されているTemplate
の情報は、SourceGeneratorによってTemplateInfoList
として生成されています。templateInfo
で指定したViewには、このTemplateProperty<T>
を宣言したクラスにバインディングされたViewModelが渡されます。
ViewModelをバインディングしたい場合は、<T>
で指定するViewクラスにHaikaraViewModelProvidableBase
を継承させる必要があります。