使用MarkupExtension将值从枚举过滤到ComboBox绑定

时间:2015-10-12 18:46:08

标签: c# wpf data-binding combobox enums

我正在使用此答案中列出的MarkupExtension将我的enum绑定到ComboBoxDatabinding an enum property to a ComboBox in WPF

这很方便,因为它允许我做这样的事情:

<ComboBox 
    ItemsSource="{util:Enumeration {x:Type viewModels:MyEnumTypeE}}" 
    DisplayMemberPath="Description" 
    SelectedValue="{Binding MyEnumValue, FallbackValue=0}"   
    SelectedValuePath="Value" />

这是我在将ComboBox绑定到大多数其他内容时常常看到的内容。

但是,我遇到了麻烦,因为现在我需要过滤掉某些枚举值。我还需要在运行时选择性地过滤它们,以便有时显示所有enum值,有时只显示一些值。

这个问题Binding WPF ComboBox to enum and hiding certain values似乎是回答这个问题的完美标题,但他们使用的是ObjectDataProvider我不是。我想我总是可以默认使用它,如果我真的需要,但由于MarkupExtension非常方便,我想继续使用它。

我的问题是:如何在仍然使用此enum时从我的ComboBox过滤掉一些MarkupExtension值?

0 个答案:

没有答案