当前位置: 首页 > news >正文

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();}}

相关文章:

  • [原创](现代Delphi 12指南):[macOS 64bit App开发]: SameText, SameStr, 比较字符串更简单
  • Boost.Timer 中的 progress_display 进度条介绍与使用
  • mac redis以守护进程重新启动
  • CppCon 2016 学习:A C++ MQTT Message Broker for the Enterprise
  • 机器学习基本概念与建模流程
  • React第六十节 Router中createHashRouter的具体使用详解及案例分析
  • 安信可(云知声蜂鸟US516P6)SDK开发学习---log日志打印子系统模块
  • 蓝桥杯等竞赛场景下 C++ 的时间与空间复杂度深度解析​
  • Python打卡第51天
  • 文献管理软件EndNote下载与安装教程(详细教程)2025最新版详细图文安装教程
  • MySQL查看连接情况
  • 力扣-347.前K个高频元素
  • (ML-Agents) 是一个开源项目,它使游戏和模拟能够作为使用深度强化学习和模仿学习训练智能代理的环境
  • 建造者模式(Builder Pattern)
  • Go 通道(Channel)入门与基础使用
  • ZZU-ARM汇编语言实验2
  • 41页PPT | 基于AI制造企业解决方案架构设计智能制造AI人工智能应用智能质检人工智能质检建设
  • 在C# 中使用建造者模式
  • Spring cloud-k8s容器化部署
  • 同步与异步:软件工程中的时空艺术与实践智慧-以蜻蜓hr人才系统举例-优雅草卓伊凡
  • 微信二维码生成器/南宁优化网站收费
  • 做网站不实名认证可以吗/360免费建站系统
  • 做的比较唯美的网站/新手做seo怎么做
  • 外包网站开发价格/百度指数查询工具
  • 接单做网站/友妙招链接
  • 武汉市住房和城乡建设局网站/网推