EnumFieldValueProperty
UIBuilder(または.uxml) でEnumFieldの方が指定されていない場合、EnumField.Init()
を呼び出す必要があります。EnumFieldValueProperty
はデータバインディング時にEnumField.Init()
を実行するBindableProperty
です。
宣言の方法
BindableProperty
と同様にEnumFieldValueProperty.Create()
を呼び出すことで宣言ができます。
csharp
private static readonly EnumFieldValueProperty EnumFieldValueProperty =
EnumFieldValueProperty.Create(
defaultValue: ControlShowCaseModel.SampleEnum.Midori,
dataSourcePath: PropertyPath.FromName(nameof(ControlsShowcaseViewModel.EnumFieldValue)),
elementNameInfo: ElementNames.EnumField,
BindingMode.TwoWay
);
Parameters
BindablePropertyが持つパラメータの他に、次のパラメータを指定することができます。
パラメータ | 型 | 必須 | 初期値 |
---|---|---|---|
defaultValue | enum | yes | - |
includeObsoleteValues | bool | no | false |
defaultValue
EnumField.Init()
にで使われる初期値です。 この値を元に、バインディングされるEnumの種類が決定されます。
詳細な内部実装はこちら を参照してください。includeObsoleteValues
[Obsolete]
が付いたenumの値を表示するかどうかを指定します。