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),下面的蓝色是可以滚动 ...
随机推荐
- 深度学习方法:受限玻尔兹曼机RBM(三)模型求解,Gibbs sampling
欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 技术交流QQ群:433250724,欢迎对算法.技术.应用感兴趣的同学加入. 接下来重点讲一下RBM模型求解 ...
- css 三(清除浮动专题)
1. 三个关于浮动的概念 不浮动float:none; 清除周围的浮动元素 float:both 这是清除浮动的本意 清除子元素浮动对父元素的影响 clearfix 很多人都理解成 ...
- AC日记——妖梦拼木棒 洛谷 P3799
妖梦拼木棒 思路: 神特么题: 代码: #include <bits/stdc++.h> using namespace std; #define mod 1000000007LL int ...
- 前端读者 | ES6知识点概述
本文来自 @羯瑞 整理 ES6,并不是一个新鲜的东西,ES7.ES8已经赶脚了.但是,东西不在于新,而在于总结. 变量的新定义 let 和 const 在ES6没有被普及时,我们会用的变量定义的方法是 ...
- CentOS 7.4 上如何安装 tomcat 9
本文将详细讲解在 CentOS 7.4 系统上如何安装tomcat 9,tomcat是没有32位和64位之分的. 创建tomcat的安装路径 首先在/usr/local/下建立一个tomcat的文件夹 ...
- UnicodeEncodeError: 'gbk' codec can't encode character ...
使用Python写文件的时候,或者将网络数据流写入到本地文件的时候,大部分情况下会遇到:UnicodeEncodeError: 'gbk' codec can't encode character ' ...
- Linux操作命令(二)
本次实验将介绍 Linux 命令中 mkdir.rm.mv.cp.cat.nl 命令的用法. 1.mkdir mkdir命令用来创建指定名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的 ...
- HttpClient(转载)
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我 们再讨论),它不仅是客户端发送Http请求变得容易,而 ...
- 循序渐进PYTHON3(十三) --4-- DJANGO之CSRF使用
用 django 有多久,跟 csrf 这个概念打交道就有久. 每次初始化一个项目时都能看到 django.middleware.csrf.CsrfViewMiddleware 这个中间件 每次在模板 ...
- 简单说明CentOS源码安装程序
第一步.安装依赖包.一般官网会有依赖关系,没有就网上搜索一下. 第二步.下载源码包,上传至CentOS服务器 第三步.解压缩 第四步.进入源码文件夹 第五步.执行./configure,这一步主要是为 ...