DevExpress下拉多选框 CheckComboboxEdit、CheckedListBoxControl
CheckComboboxEdit
//清空项
checkedComboBoxEdit1.Properties.Items.Clear();
//自定义数组
string[] strs=new string[]{"新建","审批中","已完成","已撤销"};
//添加项
checkedComboBoxEdit1.Properties.Items.AddRange(strs);
//设置选中状态
if(checkedComboBoxEdit1.Properties.Items.Count>0){
//设置选中状态
checkedComboBoxEdit1.Properties.Items[strs[0]].CheckState = CheckState.Checked;
//设置选项是否可用
checkedComboBoxEdit1.Properties.Items[strs[0]].Enabled = false;
}
//取值
checkedComboBoxEdit1.EditValue.ToString();
//获取各项值 放在List集合中
List<object> List = checkedComboBoxEdit1.Properties.Items.GetCheckedValues();
//注意 当取得值是多项时,各项之间的间隔是 英文状态下 逗号+空格
//转换方法
string result = checkedComboBoxEdit1.EditValue.ToString().Replace(", ", ",");
//是否显示 确定、取消按钮
checkedComboBoxEdit1.Properties.ShowButtons = false;
//是否显示 取消按钮
checkedComboBoxEdit1.Properties.ShowPopupCloseButton = false;
//下拉显示项的个数 (设置为下拉个数加1正好可以显示全部,因为有一行是全选项)
checkedComboBoxEdit1.Properties.DropDownRows = checkedComboBoxEdit1.Properties.Items.Count + 1;
CheckedListBoxControl
//自定义一个表
DataTable dt = new DataTable();
dt.Columns.Add("ID");
dt.Columns.Add("Name");
dt.Columns.Add("Sex");
for (int i = 0; i < 30; i++) {
DataRow dr = dt.NewRow();
dr["ID"] = i + 1;
dr["Name"]=Convert.ToString((char)(65+i))+Convert.ToString((char)(65+i));
dr["Sex"] = i % 2==0?"男":"女";
dt.Rows.Add(dr);
}
//清空项
checkedListBoxControl1.Items.Clear();
//绑定
checkedListBoxControl1.DataSource = dt;
checkedListBoxControl1.ValueMember = "ID";
checkedListBoxControl1.DisplayMember = "Name";
//全选
//checkedListBoxControl1.CheckAll();
//项的个数
int itemCount = checkedListBoxControl1.ItemCount;
//添加项(如果设置绑定,添加项无效)
checkedListBoxControl1.Items.Add("kk");
//设置选中状态、显示值、实际值、是否可用(如果设置绑定,这些将会无效)
checkedListBoxControl1.Items[0].CheckState = CheckState.Checked;
checkedListBoxControl1.Items[0].Description = "显示值";
checkedListBoxControl1.Items[0].Value = "实际值";
checkedListBoxControl1.Items[0].Enabled = false;
//效果和上面一样
checkedListBoxControl1.SetItemChecked(0, true);
checkedListBoxControl1.SetItemCheckState(0, CheckState.Checked);
checkedListBoxControl1.SetItemValue("实际值",0);
//是否被勾选
bool isChecked= checkedListBoxControl1.GetItemChecked(0);
//获取某项状态
string checkState = checkedListBoxControl1.GetItemCheckState(0).ToString();
//获取某项绑定值 valueMember
string trueValue = checkedListBoxControl1.GetItemValue(0).ToString();
//获取某项显示值 displayMember
string disValue = checkedListBoxControl1.GetDisplayItemValue(0).ToString();
string disValue2 = checkedListBoxControl1.GetItemText(0);
//是否点击一次 就改变状态
checkedListBoxControl1.CheckOnClick = true;
//是否多列显示
checkedListBoxControl1.MultiColumn = true;
//checkedListboxControl 是否获得焦点
bool isfocus=checkedListBoxControl1.ContainsFocus;
//实现单选功能
checkedListBoxControl1.SelectedIndexChanged += new EventHandler(checkedListBoxControl1_SelectedIndexChanged);
//获取选中项的绑定值(前提:手动添加的可以获取,但是datatable绑定的无法获取)
List<object> objList = checkedListBoxControl1.Items.GetCheckedValues();
void checkedListBoxControl1_SelectedIndexChanged(object sender, EventArgs e)
{
int index=checkedListBoxControl1.SelectedIndex;
for (int i = 0; i < checkedListBoxControl1.ItemCount; i++) {
if (i != index)
{
checkedListBoxControl1.SetItemChecked(i, false);
}
}
}
#region public static void SetComboBoxData(DevExpress.XtraEditors.ImageComboBoxEdit comboBox,List<T> list, string valueMember, string displayMember, string selectedText = null)
/// <summary>
/// 绑定下拉框
/// </summary>
/// <param name="comboBox">下拉控件</param>
/// <param name="List<T> ">实体集合</param>
/// <param name="valueMember">值字段</param>
/// <param name="displayMember">显示字段</param>
/// <param name="selectedText">默认选中的值</param>
public static void SetComboBoxData<T>(DevExpress.XtraEditors.ImageComboBoxEdit comboBox, List<T> list, string valueMember, string displayMember, string selectedText = null)//
{
comboBox.Properties.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor;
comboBox.Properties.NullText = string.Empty; foreach (var item in list)
{
comboBox.Properties.Items.Add(new ImageComboBoxItem(item.GetType().GetProperty(valueMember).GetValue(item, null).ToString(), item.GetType().GetProperty(valueMember).GetValue(item, null).ToString()));
} // //这里是设置默认选中的值
if (!string.IsNullOrEmpty(selectedText))
{
comboBox.SelectedItem = comboBox.Properties.Items.GetItem(selectedText);
}
}
#endregion
http://www.cnblogs.com/spring_wang/archive/2013/05/11/3072640.html
https://blog.csdn.net/xiaoyu812289718/article/details/43017755
https://blog.csdn.net/u013816709/article/details/48159309
DevExpress下拉多选框 CheckComboboxEdit、CheckedListBoxControl的更多相关文章
- 我的第一个jquery插件:下拉多选框
<!DOCTYPE HTML> <html> <head> <title> New Document </title> <meta n ...
- 使用jQuery为文本框、单选框、多选框、下拉框、下拉多选框设值及返回值的处理
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- angular2.x 下拉多选框选择组件
angular2.x - 5.x 的下拉多选框选择组件 ng2 -- ng5.最近在学angular4,经常在交流群看见很多人问 下拉多选怎么做... 今天就随便写的个. 组件源码 百度云 链接: ...
- 品优购商城项目(二)AngularJS、自动代码生成器、select2下拉多选框
品优购商城想项目第二阶段 AngularJS.自动代码生成器.select2下拉多选框 完成了课程第三天.第四天的的任务. 1.学习了AngularJs前端的mvc分层思想,js部分分成control ...
- 自己用ul模拟实现下拉多选框,
模拟实现下拉多选框 效果如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
- jquery--获取多选框的值、获取下拉多选框的值
获取多选框的值 var packageCodeList=new Array(); $('#server_id:checked').each(function(){ packageCodeList.pu ...
- 自定义实现 PyQt5 下拉复选框 ComboCheckBox
一.前言 由于最近的项目需要具有复选功能,但过多的复选框会影响界面布局和美观,因而想到把 PyQt5 的下拉列表和复选框结合起来,但在 PyQt5 中并没有这样的组件供我们使用,所以想要自己实现一个下 ...
- selectpicker下拉多选框ajax异步或者提前赋值=》默认值
Bootstrap select多选下拉框赋值 success: function (data) { var oldnumber = new Array(); $.each(data, functio ...
- 设置Select下拉多选框功能,赋值与绑定问题
项目需要所以更改select为多选下拉的菜单选项. 我用的是后台直接绑定 在前台aspx页面直接写一个 <div id="dropsxs" runat="serve ...
随机推荐
- 解决百度ueditor支持iframe框架页面的视频播放问题
新下载的ueditor 增加了xss 安全过虑,把iframe过滤了,导致发表的文章包含的视频播放功能被限制了. 说明:新版本ueditor要修改 xss过滤白名单 修改配置文件ueditor.con ...
- Cognos第三方权限认证Oracle用户库
一:概要描述 1.1:项目背景 Cognos具有强大的报表功能,但是却没有提供一个完善的用户管理体系,针对商业智能系统对数据的安全性要求,我们必须实现不同用户对不同数据的访问,确保企业级以及部门级的数 ...
- 批量合并GDB
在实际操作中,经常对数据库文件进行合并.裁切等.如果遇到gdb比较多,要素层比较多,而且还存在数据集.虽然ArcGIS中的批量处理的功能,但填写参数过程也比较麻烦,如果一次性处理过多,程序容易停止工作 ...
- utc时间转换成标准时间
把这个时间 /Date(1484884647943+0800)/ 转成标准时间 String str = String.format("%tF %<tT", 14848846 ...
- 算法笔记_122:蓝桥杯第七届省赛(Java语言A组)试题解答
目录 1 煤球数目 2 生日蜡烛 3 搭积木 4 分小组 5 抽签 6 寒假作业 7 剪邮票 8 取球博弈 9 交换瓶子 10 压缩变换 前言:以下试题解答代码部分仅供参考,若有不当之处,还请路 ...
- java面试第七天
反射: 反射:在运行时动态分析或使用一个类进行工作. java.lang.Class类:描述类信息的类. 类对象:描述一个类信息的对象,当虚拟机加载类的时候,就会创建这个类的类对象并加载该对象,Cla ...
- Codeforces B - Berland National Library
B. Berland National Library time limit per test 1 second memory limit per test 256 megabytes input s ...
- 在命令行上 Ubuntu 下使用 mutt 和 msmtp 发送 Gmail 邮件
在命令行写email from ubuntu 参考: http://www.habadog.com/2011/11/23/send-mail-with-msmtp-mutt-linux ...
- 【独立开发人员er Cocos2d-x实战 001】csb文件导出和载入
使用cocos studio进行资源文件导出: 然后在cocosproject中进行载入csb文件: auto myLayout = CSLoader::createNode("/res/ ...
- Struts2的配置文件的配置struts.xml
在学习struts的时候,我们一定要掌握struts2的工作原理. 仅仅有当我们明白了在struts2框架的内部架构的实现过程.在配置整个struts 的框架时.能够非常好的进行逻辑上的配置.接下来我 ...