手机
当前位置:查字典教程网 >编程开发 >C#教程 >WinForm实现为ComboBox绑定数据源并提供下拉提示功能
WinForm实现为ComboBox绑定数据源并提供下拉提示功能
摘要:本文实例展示了WinForm实现为ComboBox绑定数据源并提供下拉提示功能,这是一个非常有实用价值的功能,具体实现方法如下:主要功能代码...

本文实例展示了WinForm实现为ComboBox绑定数据源并提供下拉提示功能,这是一个非常有实用价值的功能,具体实现方法如下:

主要功能代码如下:

/// <summary> /// 为ComboBox绑定数据源并提供下拉提示 /// </summary> /// <typeparam name="T">泛型</typeparam> /// <param name="combox">ComboBox</param> /// <param name="list">数据源</param> /// <param name="displayMember">显示字段</param> /// <param name="valueMember">隐式字段</param> /// <param name="displayText">下拉提示文字</param> public static void Bind<T>(this ComboBox combox, IList<T> list, string displayMember, string valueMember, string displayText) { AddItem(list, displayMember, displayText); combox.DataSource = list; combox.DisplayMember = displayMember; if (!string.IsNullOrEmpty(valueMember)) combox.ValueMember = valueMember; } private static void AddItem<T>(IList<T> list, string displayMember, string displayText) { Object _obj = Activator.CreateInstance<T>(); Type _type = _obj.GetType(); if (!string.IsNullOrEmpty(displayMember)) { PropertyInfo _displayProperty = _type.GetProperty(displayMember); _displayProperty.SetValue(_obj, displayText, null); } list.Insert(0, (T)_obj); }

使用示例:

List<CommonEntity> Sources = new List<CommonEntity>(); private void WinComboBoxToolV2Test_Load(object sender, EventArgs e) { CreateBindSource(5); comboBox1.Bind(Sources, "Name", "Age", "--请选择--"); } private void CreateBindSource(int count) { for (int i = 0; i < count; i++) { CommonEntity _entity = new CommonEntity(); _entity.Age = i; _entity.Name = string.Format("Yan{0}", i); Sources.Add(_entity); } }

代码运行效果如下:

WinForm实现为ComboBox绑定数据源并提供下拉提示功能1

【WinForm实现为ComboBox绑定数据源并提供下拉提示功能】相关文章:

c# 代理模式

WinForm下 TextBox只允许输入数字的小例子

C#访问应用程序配置文件的方法

深入HTTP head的使用详解

C#中字符串编码处理

winform中写app.config文件时调试情况下没有改变的原因

c#对字符串操作的技巧小结

C#中调用命令行cmd开启wifi热点的实例代码

C#用Activex实现Web客户端读取RFID功能的代码

WinForm中快捷键与组合按键的设置方法

精品推荐
分类导航