欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > WPF案例展示

WPF案例展示

2025/12/16 14:32:34 来源:https://blog.csdn.net/qq_45024220/article/details/148580988  浏览:    关键词:WPF案例展示

下拉框的数据绑定

枚举转换成对应的中文

设置数据上下文,设置数据源,设置数据格式转换器

<UserControl.DataContext><ViewModels:SelfViewModelAll />
</UserControl.DataContext>
<UserControl.Resources><Model:SelfModelC x:Key="SelfModelC" d:IsDataSource="True"/><DataTemplate x:Key="EnumItemTemplate"><TextBlock Text="{Binding Converter={StaticResource SelfModelC}}" /></DataTemplate>
</UserControl.Resources>

下拉框的设置:

 <ComboBox Name="ModelChoose" ItemsSource="{Binding ModelList //数据来源(链表),diagnostics:PresentationTraceSources.TraceLevel=High}" //测试SelectedItem="{Binding SelectedModel, Mode=TwoWay}" //选择的项ItemTemplate="{StaticResource EnumItemTemplate}" //转换器HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Grid.Row="3" Grid.Column="1" Height="25" />

 注意ModelList必须为属性,写Get/set方法并且是Public类型,否则会找不到

 public ObservableCollection<SelfModel> ModelList { get;  set ; } = new ObservableCollection<SelfModel>();private SelfModel _selectedModel;public SelfModel SelectedModel{get => _selectedModel;set => SetProperty(ref _selectedModel, value);}public SelfViewModelAll(){// 填充枚举值foreach (SelfModel type in Enum.GetValues(typeof(SelfModel))){ModelList.Add(type);}}

 枚举:

 public enum SelfModel : int{A= 0,B,C,}

 转换器:必须自己一个文档,否则写路径时找不到

 public class SelfModelC : IValueConverter{public object Convert(object value, Type targetType, object parameter, CultureInfo culture){if (value is SelfModel model){switch (model){case SelfModel.A:return "AA";case SelfModel.C:return "CC";case SelfModel.B:return "BB";default:return string.Empty;}}return string.Empty;}public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture){throw new NotImplementedException();}}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词