在 WPF 中将枚举绑定到组合框:一种清晰简洁的方法
对于那些寻求将枚举绑定到组合框的简单方法的人WPF 中的 ComboBox,本文将提供简洁的
问题:
尝试使用 BindingPath 属性将枚举绑定到 ComboBox,却发现枚举值在ComboBox.
解决方案:
基于代码的绑定:
在 Window Loaded 事件处理程序中,使用以下代码:
yourComboBox.ItemsSource = Enum.GetValues(typeof(EffectStyle)).Cast<EffectStyle>();
此代码检索枚举值并将它们设置为ComboBox 的 ItemsSource。
XAML 绑定:
要在 XAML 中进行绑定,请使用 ObjectDataProvider:
<Window ...> <Window.Resources> <ObjectDataProvider x:Key="dataFromEnum" MethodName="GetValues" ObjectType="{x:Type System:Enum}"> <ObjectDataProvider.MethodParameters> <x:Type TypeName="StyleAlias:EffectStyle"/> </ObjectDataProvider.MethodParameters> </ObjectDataProvider> </Window.Resources> <Grid> <ComboBox ItemsSource="{Binding Source={StaticResource dataFromEnum}}" SelectedItem="{Binding Path=CurrentEffectStyle}" /> </Grid> </Window>
请记住指定命名空间和使用 xmlns 进行程序集。
这种方法提供了一种清晰、直接的方法来绑定枚举到 WPF ComboBox,无需额外显示字符串的复杂性。
以上是如何轻松地将枚举绑定到 WPF ComboBox?的详细内容。更多信息请关注PHP中文网其他相关文章!