DevExpress 中 用 LookUpEdit 控件 代替 ComboBoxEdit 控件来绑定 DataTable
绑定数据及定义列信息
LookUpEdit lue = lookUpEdit1;
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("name"));
dt.Columns.Add(new DataColumn("code"));
DataRow row = dt.Rows.Add();
row["name"] = "tom";
row["code"] = "";
row = dt.Rows.Add();
row["name"] = "Jack";
row["code"] = "";
lue.Properties.DataSource = dt; // 绑定数据源
lue.Properties.DisplayMember = "name"; // 指定显示字段
lue.Properties.ValueMember = "code"; // 指定值字段
LookUpColumnInfo col; // 定义列信息
LookUpColumnInfo col2;
col = new LookUpColumnInfo("code", "编码"); // 定义列信息 对应的字段名称及字段表头即Caption
col.SortOrder = ColumnSortOrder.Descending; // 指定列排序(貌似只能对第一列进行排序)
// col.Visible = false; // 控制列是否显示(往往用在对ID或是编码等主键值进行隐藏显示)
lue.Properties.Columns.Add(col); // 向 LookUpEdit 中添加列
col2 = new LookUpColumnInfo("name", "姓名");
//col2.SortOrder = ColumnSortOrder.Ascending;
lue.Properties.Columns.Add(col2);
读取选中值:
MessageBox.Show(string.Format(" {0} : {1} ",lookUpEdit1.EditValue, lookUpEdit1.Text));
设置 null值的显示:
// 清除选择:
lookUpEdit1.EditValue = null; // Null值时显示
lookUpEdit1.Properties.NullText = "空值"; // Null值或当没有焦点时显示的Text
lookUpEdit1.Properties.NullValuePrompt = "请选择";
以上为自己参考网络上写的,以下为摘自网络: http://www.cnblogs.com/ruixue/archive/2013/03/19/2968793.html
DevExpress LookUpEdit和ComboBoxEdit部分用法
LookUpEdit
、绑定列 (注意点:LookUpEdit1的FieldName要和绑定的列明一致)
方式一:
•LookUpEdit1.Properties.DisplayMember = "attrib2Name";
•LookUpEdit1.Properties.ValueMember = "attrib2";
•LookUpEdit1.Properties.DataSource = dataset1.Tables["TDefSeason"];
方式二:(注意:若采用方式二绑定又赋值的话,数据源可能会变掉,此中情况下最好采用第一种方式)
•LookUpEdit1.DataBindings.Add("EditValue", dataset1.Tables["TDefSeason"], "attrib2");
•LookUpEdit1.Properties.DataSource = dataset1.Tables["TDefSeason"];
、赋值
•LookUpEdit1.EditValue="";
、列显示为百分号:
• LookUpEdit1.Properties.MaskType="Numeric";
• LookUpEdit1.Properties.EditMask="p"; (若要显示输入不超过100%,则设为"#0.00%"
ComBoxEdit
、comboBoxEdit1.Properties.Items[comboBoxEdit1.SelectedIndex].ToString() 使用前需要先确认 comboBoxEdit1.SelectedIndex不能等于-,不然报错。
、ComboBoxEdit也是DevExpress winform控件中经常使用的一个,我们在使用的过程中可能有时需要对ComboBoxEdit控件进行数据绑定,而ComboBoxEdit控件不像LookUpEdit控件拥有DataSource属性,可以直接绑定一个数据集。
//手工添加ComboBoxEdit的数据源
comboBoxEdit1.Properties.Items.Clear();
foreach (DataRow row in this.ColorData.Rows)
{
comboBoxEdit1.Properties.Items.Add(row["ColorCode"]);
}
、设置comboBoxEdit的下拉框只读,不允许编辑,只需设置其Properties的 TextEditStyle的值为 DisableTextEditor即可。
摘自网络: DevExpress.XtraEditors.LookUpEdit基本用法
http://hi.baidu.com/renrsh/item/463c07d9202c2ae7b3f777a4
在**_Load里 首先,从DB取得的数据:SqlDataReader myDataReader = myCommand.ExecuteReader(); 然后, using(DataTable dt = new DataTable())
{
dt.Load(myDataReader);
lokPurchaseSlipkbn.Properties.DataSource = dt;
lokPurchaseSlipkbn.Properties.DisplayMember = "kbn_control_kbn";
lokPurchaseSlipkbn.Properties.ValueMember = "l_name"; Column追加
LookUpColumnInfoCollection colCollection1 = lokPurchaseSlipkbn.Properties.Columns;
colCollection1.Clear();
colCollection1.Add(new LookUpColumnInfo("l_name","",));
int dropDown1 = (dt == null || dt.Rows.Count > LOK_VIEW_MAXROW) ? LOK_VIEW_MAXROW : dt.Rows.Count;
lokPurchaseSlipkbn.Properties.DropDownRows = dropDown1;
lokPurchaseSlipkbn.Properties.BestFit();
lokPurchaseSlipkbn.Properties.PopupWidth = ;
} gridView的用法:首先要配置好view,然后用法是一样的。 Properties.NullTest = [未选择]时,LookUpEdit选择其他的值时,Properties.AllowNullInput = true; LookUpEdit控件数据绑定例子 try { KPMISDataBase dc = new KPMISDataBase(); ddlOutOrg.Properties.Columns.Clear(); var query = from o in dc.Bas_Organization join p in dc.Fin_OrgAccount on o.Org_ID equals p.Org_ID where p.Acct_Status == "正常" select new { o.Org_ID, o.Org_Name }; DataTable dt = query.Distinct ().ToDataTable(rec => new object[] { query }); if (dt.Rows.Count > ) { DataRow dr = dt.NewRow(); dr["Org_ID"] = ""; dr["Org_Name"] = "--请选择--"; dt.Rows.InsertAt(dr, ); ddlOutOrg.Properties.Columns.Add(new LookUpColumnInfo("Org_Name")); ddlOutOrg.Properties.ValueMember = "Org_ID"; ddlOutOrg.Properties.DisplayMember = "Org_Name"; ddlOutOrg.Properties.DataSource = dt; ddlOutOrg.EditValue = dt.Rows[]["Org_ID"]; } else { ddlOutOrg.Properties.DataSource = null; ddlOutOrg.Properties.NullText = "--没有数据--"; } } catch (Exception ex) { MsgBox.ErrShow(ex.Message); } dev 控件 lookupedit 设置选项值
使用lookupedit1的值:
变量=this.lookupedit.editvalue.tostring() //是ookupedit.properties.valuemember的值
变量=this.lookupedit.text.trim() //是ookupedit.properties.displaymember 的值
特别值得注意的是,有时候我们要使用lookupedit来实现combox的一些效果,在实际的使用过程中在程序加载的时候会默认的选择第一项,它的设置是:
lookupedit.itemindex=; //选择第一项
lookupedit.itemindex=-; //无选项,此时显示的是nulltext值 其实这个地方只要editvalue==null,lookupedit就显示nulltext
lookupedit1.editvalue=value;//自动搜索datasouse,选择与之匹配的值,没有的情况下赋值null ,value的值必须与valuemember的数据类型一致。 ComboBoxEdit数据绑定 <整理:冰河渔者 --> ComboBoxEdit也是DevExpress winform控件中经常使用的一个,我们在使用的过程中可能有时需要对ComboBoxEdit控件进行数据绑定,而ComboBoxEdit控件不像LookUpEdit控件拥有DataSource属性,可以直接绑定一个数据集。
下面我们使用 ComboBoxEdit的comboBoxEdit1.Properties.Items.Add(object item)方法来实现数据绑定. .先用GetAreaDataTable方法返回一个DataTable,代码如下:
public static DataTable GetAreaDataTable()
{
string sqlStr = "select BMMC from usiCLB where BMLID=3";
DataBase db = new DataBase();
DataTable dt = db.GetDataTable(sqlStr);
return dt;
} .然后将数据循环添加到ComboBoxEdit中,代码如下:
private void LoadComboBoxEdit()
{
this.comboBoxEdit1.Properties.NullText = "请选择...";
DataTable dt = UserInfo.GetAreaDataTable();
for (int i = ; i < dt.Rows.Count; i++)
{
comboBoxEdit1.Properties.Items.Add(dt.Rows[i]["BMMC"].ToString());
}
} 允许输入自定义值 LookupEditor1.Properties.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.Standard;
DevExpress 中 用 LookUpEdit 控件 代替 ComboBoxEdit 控件来绑定 DataTable的更多相关文章
- DevExpress中的lookupedit的使用方法详解
摘自: http://***/zh-CN/Info/catalog/17631.html 概述:本文详细介绍了DevExpress中的lookupedit的使用方法. 绑定数据源: 1 2 3 l ...
- devexpress中gridview控件编辑时改变输入法状态
在win7环境下使用Devexpress中的SpinEdit控件,切换成中文[简/繁]输入法输入数字键时有不少输入法会重复产生数字如输入1会变成11,输入123会变成112233.使用SpinEdit ...
- 使用Devexpress中的CharControl控件,需要控制AxisY轴的显示范围,需要使用该控件的BoundDataChanged事件
一.控制ChartControl的Y轴范围 使用Devexpress中的CharControl控件,需要控制AxisY轴的显示范围,需要使用该控件的BoundDataChanged事件,具体代码如下: ...
- 玩转控件:重绘DEVEXPRESS中DateEdit控件 —— 让DateEdit支持只选择年月 (提供源码下载)
前言 上一篇博文<玩转控件:重绘ComboBox —— 让ComboBox多列显示>中,根据大家的回馈,ComboBox已经支持筛选了,更新见博文最后最后最后面. 奇葩 这两天遇到 ...
- 在DevExpress中使用CameraControl控件进行摄像头图像采集
在我们以前的项目了,做摄像头的图片采集,我们一般还是需要做一个封装处理的,在较新版本的DevExpress控件里面,增加了一个CameraControl控件,可以直接调用摄像头显示的,因此也可以做头像 ...
- DevExpress控件的GridControl控件小结
DevExpress控件的GridControl控件小结 (由于开始使用DevExpress控件了,所以要点滴的记录一下) 1.DevExpress控件组中的GridControl控件不能使横向滚动条 ...
- VS环境下,DEV插件的ComboBoxEdit控件最简单的数据源绑定和获取方法
使用 ComboBoxEdit 控件绑定key/value值: 因为 ComboBoxEdit 没有 DataSource 属性,所以不能直接绑定数据源,只能一项一项的添加. 首先创建一个类ListI ...
- winform中button点击后再点击其他控件致使button失去焦点,此时button出现黑色边线,去掉黑色边线的方法
winform中button点击后再点击其他控件致使button失去焦点,此时button出现黑色边线,去掉黑色边线的方法 button的FlatAppearence属性下,设置BorderSize= ...
- iOS开发中的错误整理,关于用绑定Tag取控件的注意事项,有时候不绑定也是个错!
如图:红色框中是个自定义的导航工具条titlesView(没有绑定Tag),工具条中有五个按钮(按钮绑定了Tag)以及一个红色的指示器indicatorView(没有绑定Tag),下面的蓝色是可以滚动 ...
随机推荐
- 如何把Android Studio项目转换成Eclipse的项目
1. 找到这个目录:项目名称\app\src\main,并把它导入到Eclipse里 2. 把项目名称\app\libs文件夹拷贝到新生成的项目下,并删除掉.DS_Store文件 3. 这时再看还有什 ...
- AC日记——「SCOI2016」美味 LiBreOJ 2016
#2016. 「SCOI2016」美味 思路: 主席树: 代码: #include <bits/stdc++.h> using namespace std; #define maxa 26 ...
- Nuget私服使用
首先前提是师父已经搭好私服环境了(怎么搭建参考https://www.cnblogs.com/liupengblog/archive/2012/09/10/2678508.html). 然后在vs中打 ...
- gulp-connect插件浏览器实时同步刷新
1.在站点路径里打开cmd控制台. 输入:cnpm install gulp-connect --save-dev 2.编辑gulpfile.js 3.控制台执行gulp任务 输入gulp serve ...
- CentOS7下python工作环境管理
一.pyenv管理不同的python版本1.下载安装git clone git://github.com/yyuu/pyenv.git ~/.pyenv echo 'export PYENV_ROO ...
- 【剑指offer】面试题 57. 和为 S 的数字
面试题 57. 和为 S 的两个数字 题目一:和为 S 的两个数字 题目 输入一个递增排序的数组和一个数字 S,在数组中查找两个数,是的他们的和正好是 S,如果有多对数字的和等于 S, 输出两个数的乘 ...
- JavaScript 对象创建
tips: JavaScript 除了null和undefined之外,其他变量都可以当做对象使用. JavaScript 的基本数据类型有:number boolean string null u ...
- 【java】线程安全的整型类AtomicInteger
一.遇见AtomicInteger 在看项目代码的时候看到这个类,发现其功能很简单,就是一个整型变量的类型,出于好奇看了其类定义. 该类位于java.util.concurrent.atomic下,在 ...
- 【JAVA】在线程里使用线程外的变量为什么一定要是final类型
这个情况真的碰到很多,开始的时候也很难理解,但是既然IDE提示要final那我就final咯,跑通就行管那么多呢.然而这并不是科学的学习方法,万一面试问你呢那不是倒了大霉. OK,看了一些
- BZOJ 4756 [Usaco2017 Jan]Promotion Counting(线段树合并)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=4756 [题目大意] 给出一棵树,对于每个节点,求其子树中比父节点大的点个数 [题解] ...