将enum转换成一个list去binding
Step 1: 添加一个ObjectDataProvider
<UserControl> <UserControl.Resources> <ObjectDataProvider x:Key="MyEnumNameList" MethodName="GetValues" ObjectType="{x:Type system:Enum}"> <ObjectDataProvider.MethodParameters> <x:Type TypeName="MyNamespaceOfEnum:MyEnum"/> </ObjectDataProvider.MethodParameters> </ObjectDataProvider> </UserControl.Resources> </UserControl>
Step 2: 使用新添加的ObjectDataProvider去做binding
<Combobox ItemsSource={StaticResource MyEnumNameList}/>
Step 3: 需要取回选中的enum值时,直接使用SelectedItem就是对应的enum value.
时间: 2024-10-07 23:10:46