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 ...
随机推荐
- jupyter notebook改变行间图片大小
jupyter notebook使用起来代码效果很直接,这是我最喜欢的一点,但是主题单一,后来改了一下主题.也可以接受了,但是还有一个问题是显示图片太小我们可以用两个方法来改变它. 一.可以通过rcP ...
- Java 添加Word脚注、尾注
Word中的脚注和尾注都是对文本的补充说明.脚注一般是附在书页最左下端的注文,用以解释.说明特定内容:而尾注则是位于文档末尾,用于列出引文的出处.脚注和尾注都可以是针对某些文字或者段落来添加.本文中, ...
- attempted to return null from a method with a primitive return type (int).
java接口文件 package com.cyb.ms.mapper; import org.apache.ibatis.annotations.Param; public interface Acc ...
- WebViewJavascriptBridge的详细使用
参考链接: https://www.jianshu.com/p/d12ec047ce52 https://www.jianshu.com/p/ba6358b1eec3 有demo:https://ww ...
- 转战物联网·基础篇03-从JSON数据到短指令谈思维的转变
了解了物联网项目的大体结构之后,我们先从物联网的联网相关部分说起,这也是物联网项目中的关键环节.在联网环节中,不仅要考虑如何连接上,还要考虑连接后如何传输数据.换句话说数据是以什么格式进行传输,对 ...
- Octave中的一些常用操作
>> 5+6ans = 11>> 1~=2ans = 1 %1表示true,0表示false>> 1~=1 %1不等于1ans = 0>> a=2 ...
- go语言设计模式之state
state.go package main import ( "fmt" "math/rand" "os" "time" ...
- Codeforces Round #608 (Div. 2)
传送门 A. Suits 签到. Code /* * Author: heyuhhh * Created Time: 2019/12/15 17:16:33 */ #include <iostr ...
- python的imread、newaxis
一:imread 用来读取图片,返回一个numpy.ndarray类型的多维数组,具有两个参数: 参数1 filename, 读取的图片文件名,可以使用相对路径或者绝对路径,但必须带完整的文件扩展名( ...
- C++ 的 +,加号重载示例
#include <iostream> // overloading "operator + " // 要考虑加法的形式 // a+1 // a+a // 1+a // ...