私はこれから始めます: ビットごとのフラグ列挙型 とこれ: 列挙型メンバーへのアクセス
これは私のコードです
[Flags]
public enum DeliveryDays
{
[Description("None")]
NONE = 0, // 0000000
[Description("monday")]
MON = 1, // 0000001
[Description("tuersady")]
TUE = 2, // 0000010
[Description("wedsnay")]
WED = 4, // 0000100
[Description("thursday")]
THU = 8, // 0001000
[Description("friday")]
FRI = 16, // 0010000
[Description("saturday")]
SAT = 32, // 0100000
[Description("sunday")]
SUN = 64, // 1000000
WORKDAYS = MON | TUE | WED | THU | FRI, //0011111
WEEKENDS = SAT | SUN //1100000
}
public class Finder
{
public DeliveryDays AvailableDays = DeliveryDays.WEEKENDS;
public DeliveryDays SelectedDays { get; set; }
public Finder()
{
SelectedDays = DeliveryDays.NONE;
}
}
これはXAMLです
<ComboBox Height="50"
ItemsSource="{Binding Source={my:Enumeration {x:Type my:DeliveryDays}}}"
DisplayMemberPath="Description"
SelectedValue="{Binding SelectedDays}"
SelectedValuePath="Value" />
コンボボックスにはすべての列挙型が表示されますが、インスタンスメンバーフィールドDeliveryDays
には列挙型の値のみが必要です。そのため、フィールドに列挙値のみを表示AvailableDays
するようにカスタムを変更する必要があります。カスタムメソッドからこのフィールドにアクセスするにはどうすればよいですか? XAML で可能でない場合、回避策はありますか?MarkupExtension
AvailableDays
EnumListExtension
ありがとう