ComboBox绑定枚举和自定义类时指定列表中显示的类属性内容
来源:互联网 发布:flash游戏源码 编辑:程序博客网 时间:2024/06/08 17:44
枚举类定义
public class EnumItem { public string Text { get; set; } public int Value { get; set; } public string Description { get; set; } public EnumItem(string text, int value, string description) { Text = text; Value = value; Description = description; } }获取枚举文本,值和描述的方法
public static List<EnumItem> GetEnumItems(Type enumType) { var list = new List<EnumItem>(); if (enumType.IsEnum != true) { throw new InvalidOperationException(); } var typeDescription = typeof(DescriptionAttribute); var fields = enumType.GetFields(); foreach (var field in fields) { if (field.FieldType.IsEnum == false) continue; var value = (int)enumType.InvokeMember(field.Name, BindingFlags.GetField, null, null, null); var description = string.Empty; var arr = field.GetCustomAttributes(typeDescription, true); if (arr.Length > 0) { var aa = (DescriptionAttribute)arr[0]; description = aa.Description; } else { description = field.Name; } var text = field.Name; if (description != "NotBind") list.Add(new EnumItem(text, value, description)); } return list; }
页面上下文中绑定的获取枚举的参数
public ObservableCollection<EnumItem> Sex => new ObservableCollection<EnumItem>(EnumHelper.GetEnumItems(typeof(Sex)));页面端代码
<ComboBox Grid.Row="2" Grid.Column="1" VerticalAlignment="Center" Margin="0,12,0,2" Grid.ColumnSpan="2" ItemsSource="{Binding DataContent.Sex}" DisplayMemberPath="Description" SelectedValuePath="Text" />
其中DisplayMemberPath="Description"意为将显示成员的路径指定为itemsSource所指定的Sex的成员Description
简单点说就是,显示的具体内容为Sex的Description项
其他的Path以此类推,只需填写成员的名称即可,无需再绑定和指定具体的路径,因为ItemsSource已经描述了路径位置了
阅读全文
0 0
- ComboBox绑定枚举和自定义类时指定列表中显示的类属性内容
- 控件显示内容的绑定类 combobox 为每一item 加tag
- 把枚举类型的值绑定到一个ComboBox中
- spring boot 获取指定类中自定义注解的内容
- c#(winform)中自定义ListItem类方便ComboBox和ListBox添加项完全解决(DropDownList 和Combox 数据绑定的常用方法)
- c#(winform)中自定义ListItem类方便ComboBox和ListBox添加项完全解决(DropDownList 和Combox 数据绑定的常用方法) .
- VB.Net自己写的一个控件:ComboBox下拉列表中显示多列数据(可以绑定数据表)
- 在comboBox中获取dataProvider属性绑定的变量
- 在DEDECMS后台管理文档列表中,需要在列表中显示自定义的字段内容
- 通过jsp动作元素将表单的内容和javabean的属性绑定,并显示出来
- 通过jsp动作元素将表单的内容和javabean的属性绑定,并显示出来。
- Unity自定义Inspector窗口——根据枚举类型显示指定内容
- Python 列表中存储类对象时按照指定属性进行排序——用于正排表的排序
- WPF 的COMBOBOX绑定(匿名类)
- WPF中comboBox组件如何绑定里面有Description的枚举
- WPF{ComboBox绑定类对象, 下拉列显示的值,与取到的值}
- 对gridview绑定数据的操作方法,自定义显示内容
- 对gridview绑定数据的操作方法及自定义显示内容
- Shell 重启程序
- CSS的相对定位与绝对定位
- SpringData JPA @query注解使用原生代码报错问题
- 设计模式之适配器模式
- use swap file as swap partitoin
- ComboBox绑定枚举和自定义类时指定列表中显示的类属性内容
- Java中用HttpsURLConnection访问Https链接的问题
- Linux c 开发
- js题目
- IATF 16949:2016 完整版标准解读
- Android 导入EaseUI后实现音视频功能
- 1025. Democracy in Danger
- 运算符重载 编程题#3(专项课程3;重载:* operator, & operator=, & operator(); 函数 memcpy 的使用)
- 第五周项目1—建立顺序栈算法库