DevExpress的下拉框控件ComboxBoxEdit怎样绑定键值对选项
场景
DevExpress的下拉框控件ComboBoxEdit控件的使用:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102855898
在设置ComboBoxEdit的下拉框内容时除了最简单的
comboBox.Properties.Items.Add("下拉选项1");
如果要添加键值对形式的数据该怎样实现。
注:
博客主页:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
即在Add选项时添加的不是普通的字符串,而是一个对象实体类,里面有
键值对两个属性,在添加选项时是添加一个个的对象。
为了在显示时显示对象的value,需呀重写对象的toString方法,使其
返回value。
新建实体类对象,必须要重写其toString方法。
public class ControlModelItem
{ public ControlModelItem(string key,string value)
{
this.key = key;
this.value = value;
}
private string key; public string Key
{
get { return key; }
set { key = value; }
}
private string value; public string Value
{
get { return this.value; }
set { this.value = value; }
} public override string ToString()
{
return Value;
}
}
然后声明下拉框
DevExpress.XtraEditors.ComboBoxEdit comboBox = new DevExpress.XtraEditors.ComboBoxEdit();
添加下拉框选项
int i=; ComboBoxItemCollection coll = comboBox.Properties.Items;
foreach(ControlModelItem controlModelItem in controlModelItems)
{
coll.Add(controlModelItem);
if (controlModelItem.Value == currentCellValue)
comboBox.SelectedIndex = i;
i++;
}
获取选中项的key和value
if (comboBox.SelectedItem != null)
{
string key = (comboBox.SelectedItem as ControlModelItem).Key;
string value = (comboBox.SelectedItem as ControlModelItem).Value;
}
注意:
这里是要将当前Cell的内容赋值给下框默认选中,如果通过SelectText强行赋值的话,则会导致当前选中
的key缺失,在获取key时就会报错。
可以通过上面这种判断value相等时将当前index设置为选中项SelectedIndex。
获取通过SelectedItem和下标的方式指定选中项。
此时就可以在下拉框的选项改变事件中获取当前选中项的key和value
comboBox.SelectedValueChanged += comboBox_SelectedValueChanged;
private void comboBox_SelectedValueChanged(object sender, EventArgs e)
{ DevExpress.XtraEditors.ComboBoxEdit comboBox = sender as ComboBoxEdit;
ControlModelItem controlModelItem = comboBox.SelectedItem as ControlModelItem;
string controlModelItemkey = controlModelItem.Key;
switch (controlModelItemkey)
{
//恒压
case "ConstantVoltage":
break; default:
break;
}
}
DevExpress的下拉框控件ComboxBoxEdit怎样绑定键值对选项的更多相关文章
- DevExpress的下拉框控件LookUpEdit的使用、添加item选项值、修改默认显示值
场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...
- DevExpress的下拉框控件ComboBoxEdit控件的使用
场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...
- C#通过SendMessage发送消息,改变其他程序的下拉框控件(ComboBox)的值
IntPtr cbh= new IntPtr(handle); //ComboBox的句柄 SendMessage(cbh, 0x014D, new IntPtr(-1), "需要选中的下拉 ...
- FineReport——JS二次开发(隐藏下拉框控件的倒三角)
在对FR控件进行二次开发的过程中,需要自定义样式,比如下拉框控件带有自动检索的功能,但是又希望它的显示样式如同文本框一样,这时就需要隐藏多余的部分. 在对在线文档的查阅中可以发现很多选择器适用于多种控 ...
- [原创]自己动手实现React-Native下拉框控件
因项目需要,自己动手实现了一个下拉框组件,最近得空将控件独立出来开源上传到了Github和npm. Github地址(求Star 求Star 求Star
- 用MVC的辅助方法自定义了两个控件:“可编辑的下拉框控件”和“文本框日历控件”
接触MVC也没多长时间,一开始学的时候绝得MVC结构比较清晰.后来入了门具体操作下来感觉MVC控件怎么这么少还不可以像ASP.net form那样拖拽.这样设计界面来,想我种以前没学过JS,Jquer ...
- DropShadowEffect导致下拉框控件抖动
<!--<Border.Effect> <DropShadowEffect Direction="180" BlurRadius="1" ...
- android 开发-spinner下拉框控件的实现
Android提供实现下拉框功能的非常实用的控件Spinner. spinner控件需要向xml资源文件中添加spinner标签,如下: <Spinner android:id="@+ ...
- spinner 下拉框控件
spinnerMode=dropdown时,为下拉模式spinnerMode=dialog时,会在界面中间弹出Android:popupBackground=”#f0000000”,可以去除spinn ...
随机推荐
- 利用Python进行数据分析-Pandas(第七部分-时间序列)
时间序列(time series)数据是一种重要的结构化数据形式,应用于多个领域,包括金融学.经济学.生态学.神经科学.物理学等.时间序列数据的意义取决于具体的应用场景,主要有以下几种: 时间戳(ti ...
- Flutter竟然发布了1.5版本!!!!
2018年2月,Flutter推出了第一个Beta版本,在2018年12月5日,Flutter1.0版本发布,当时用了用觉得这个东西非常好用,对于当时被RN搞的头皮发麻的我来说简直是看到了曙光.而在昨 ...
- SpringBoot的启动流程分析(2)
我们来分析SpringApplication启动流程中的run()方法,代码如下 public ConfigurableApplicationContext run(String... args) { ...
- Oracle 快速配置连接服务
[net Manager配置] oracle客户端连接,或者代码连接时,需要配置本地连接服务. [快速配置] ①找到 tnsnames.ora 文件,使用记事本打开 ② TEST{#服务名} = (D ...
- ORACLE EXPIRED(GRACE)
查询用户状态col username for a20col account_status for a20select username,account_status,LOCK_DATE,EXPIRY_ ...
- Linux查看文件系统的挂载时间浅析
我们在Linux系统中如何找到文件系统的挂载时间呢,下面实验测试环境为RHEL 6.6,其它Linux版本没有验证测试.这个简单测试了一下常用的ext3/4.xfs.nfs文件系统. ext文件系统 ...
- Centos7 下安装python3及卸载
一.安装python3 1.安装依赖包 yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel read ...
- Codeforces Round #608 (Div. 2)
传送门 A. Suits 签到. Code /* * Author: heyuhhh * Created Time: 2019/12/15 17:16:33 */ #include <iostr ...
- NOIP 2016 组合数问题
洛谷 P2822 组合数问题 洛谷传送门 JDOJ 3139: [NOIP2016]组合数问题 D2 T1 JDOJ传送门 Description 组合数Cnm表示的是从n个物品中选出m个物品的方案数 ...
- Goldbach`s Conjecture(LightOJ - 1259)【简单数论】【筛法】
Goldbach`s Conjecture(LightOJ - 1259)[简单数论][筛法] 标签: 入门讲座题解 数论 题目描述 Goldbach's conjecture is one of t ...