DevExpress:下拉框绑定数据源 (ComboBoxEdit,LookUpEdit)
DevExpress:下拉框绑定数据源 (ComboBoxEdit,LookUpEdit)
DevExpress:下拉框绑定数据源 (ComboBoxEdit,LookUpEdit) // 设置下拉框 传入参数(需要设置的下拉框控件,查询的语句,默认第一行的内容)
public static void SetComboList(DevExpress.XtraEditors.ComboBoxEdit ComboList, string QuerySQL, string FirstRowText = "",bool bSelectFirstItem=false)
{
DataTable dtList=null;
try
{
dtList = sqlHelper.ExecuteDataTable(Common.ConnString, CommandType.Text, QuerySQL, null);
}
catch (Exception ex)
{
frm0201.DisplayMsg("数据访问异常:", ex.Message.ToString());
return;
} int intCount = (dtList!=null) ? dtList.Rows.Count : ;
ComboList.Properties.TextEditStyle = TextEditStyles.DisableTextEditor; // 设置 comboBox的文本值不能被编辑
ComboList.Properties.Items.Clear();
if (!string.IsNullOrEmpty(FirstRowText)) ComboList.Properties.Items.Add(FirstRowText); if (intCount > )
{
for (int i = ; i < intCount; i++)
{
ComboList.Properties.Items.Add(dtList.Rows[i][].ToString());
}
}
if (bSelectFirstItem) ComboList.SelectedIndex = ; // 设置选中第1项
} //设置下拉框 loe 为下拉框名, sSql 为下拉框的数据来源
public static void SetLookUpList(ref DevExpress.XtraEditors.LookUpEdit loeSource, string strSQL, int ValueCol = , int NameCol = ,DataTable dtSource=null,bool bSelectFirstItem=false,string sFirstRowText="")
{
DataTable dt =null; try
{
if (!string.IsNullOrEmpty(strSQL))
{
dt = sqlHelper.ExecuteDataTable(Common.ConnString, CommandType.Text, strSQL, null);
}
else if (dtSource != null)
{
dt = dtSource.Copy();
}
}
catch (Exception ex)
{
frm0201.DisplayMsg("数据访问异常:", ex.Message.ToString());
return;
} loeSource.Properties.Columns.Clear();
loeSource.Properties.DataSource = null; if (dt!=null && dt.Rows.Count > && dt.Columns.Count > ) // 一般为2列: id列 和 value 列
{
loeSource.Properties.Columns.Add(new LookUpColumnInfo(dt.Columns[ValueCol].ColumnName.ToString()));
loeSource.Properties.Columns[ValueCol].Visible = false; // 隐藏id列
loeSource.Properties.Columns.Add(new LookUpColumnInfo(dt.Columns[NameCol].ColumnName.ToString())); if (!string.IsNullOrEmpty(sFirstRowText))
{
DataRow dr = dt.NewRow();
dr[dt.Columns[ValueCol]] = -; // 这一项的 ID 值为 -1
dr[dt.Columns[NameCol]] = sFirstRowText;
dt.Rows.InsertAt(dr, );// 从索引为0的位置插入
} loeSource.Properties.DataSource = dt;
loeSource.Properties.ValueMember = dt.Columns[ValueCol].ColumnName; // 对应ID
loeSource.Properties.DisplayMember = dt.Columns[NameCol].ColumnName; // 显示内容 if (bSelectFirstItem) // 是否选中第一项
{
int iID=;
if(Int32.TryParse(dt.Rows[][].ToString(),out iID))
{
loeSource.EditValue = iID;
}
}
} loeSource.Properties.ShowHeader = false;
loeSource.Properties.ShowFooter = false;
loeSource.Properties.NullText = "";
} // 得到下拉框 的内容项,以Keys.Tab拼成一个字符串
public static string GetComboList(string sQuerySQL)
{
try
{
DataTable dtList = sqlHelper.ExecuteDataTable(Common.ConnString, CommandType.Text, sQuerySQL, null);
if (dtList!=null && dtList.Rows.Count > && dtList.Columns.Count == ) // 有数据且只有一列
{
string sResult = string.Empty;
for (int i = ; i < dtList.Rows.Count; i++)
{
sResult += dtList.Rows[i][].ToString() + Convert.ToChar(Keys.Tab);
} if (sResult.Length > )
{
sResult = sResult.Remove(sResult.Length - );
}
return sResult;
}
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message.ToString());
} return "";
}
DevExpress:下拉框绑定数据源 (ComboBoxEdit,LookUpEdit)的更多相关文章
- winform的combox下拉框绑定数据源
List<Site> list = new List<Site>(); foreach (DataRow srcDr in srcDt.Rows) { list.Add(new ...
- knockoutjs foreach array绑定 表格 下拉框绑定
转载http://desert3.iteye.com/blog/1480471 knockoutjs foreach array绑定 表格 下拉框绑定 博客分类: Javascript 动态表格使 ...
- @Html.DropDownListFor 下拉框绑定(选择默认值)
首先先构建绑定下拉框的数据源 private void GetSalesList() { var userList = _rmaExpressAppService.GetUserList(); Tem ...
- EXT学习之——Ext下拉框绑定以及级联写法
/*******步骤有四个,缺一不可*********/ function () {xxxxxx = Ext.extend(construct, {InitControl: function () { ...
- vue select下拉框绑定默认值
vue select下拉框绑定默认值: 首先option要加value值,以便v-model可以获取到对应选择的值 一.当没有绑定v-model,直接给对应的option加selected属性 二.当 ...
- jQ给下拉框绑定事件,为什么要绑定在框(select标签)上,而不是绑定在选项(option标签)上
这是我在学习锋利的 jquery 书中 5.1.4 的代码时遇到的一个小问题,源代码如下: <head> <style type="text/css"> * ...
- 商品类型的下拉框绑定一个事件,通过ajax获取属性
html代码这么写 <!-- 商品属性 --> <table cellspacing="1" cellpadding="3" width=&q ...
- DevExpress的下拉框控件ComboBoxEdit控件的使用
场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...
- Winform 下拉框绑定问题
在Winform中下拉框绑定的时候只能读到text属性值,Id的值不管怎么搞都读取不到,所以就百度找到了一种方式: public void CmdBind() { var data = _logic. ...
随机推荐
- CentOS7配置redis主从复制
规划 ip port role 192.168.1.31 6379 master 192.168.1.32 6379 slave 192.168.1.33 6379 slave 0.关闭防火墙 sys ...
- Eclipse 报 "The builder launch configuration could not be found" 错误的解决办法
http://blog.csdn.net/defonds/article/details/26340561 Eclipse 忽然报 "The builder launch configura ...
- 洛谷——P1626 象棋比赛
P1626 象棋比赛 题目描述 有N个人要参加国际象棋比赛,该比赛要进行K场对弈.每个人最多参加两场对弈,最少参加零场对弈.每个人都有一个与其他人不相同的等级(用一个正整数来表示). 在对弈中,等级高 ...
- Linux含交互的自动登录脚本
近来经常要通过ssh登录服务器,每次输入命令和密码很麻烦,查资料发现有两种解决,一种是本地创建密钥直接登录,另一种是写个脚本. 这里介绍第二种方法,第一种资料也很多,但是觉得没啥意思. 先上脚本: # ...
- Python开发基础-Day18继承派生、组合、接口和抽象类
类的继承与派生 经典类和新式类 在python3中,所有类默认继承object,但凡是继承了object类的子类,以及该子类的子类,都称为新式类(在python3中所有的类都是新式类) 没有继承obj ...
- nodemon 基本配置与使用
在开发环境下,往往需要一个工具来自动重启项目工程,之前接触过 python 的 supervisor,现在写 node 的时候发现 supervisior 在很多地方都有他的身影,node 也有一个 ...
- 【线段树】洛谷 P3372 【模板】线段树 1
动态开结点线段树板子. #include<cstdio> using namespace std; typedef long long ll; ll sumv[400005],delta[ ...
- 【模拟退火】poj1379 Run Away
题意:平面上找一个点,使得其到给定的n个点的距离的最小值最大. 模拟退火看这篇:http://www.cnblogs.com/autsky-jadek/p/7524208.html 这题稍有不同之处仅 ...
- Problem F: 零起点学算法85——数组中插入一个数
#include<stdio.h> int main() { ],b[]; while(scanf("%d",&n)!=EOF) { ;i<n;i++) ...
- 【MySQL笔记】字符串、时间日期转换
1.新增一列,将字符串日期(年.月.日)转换为Date类型 报错:Error Code: 1175. You are using safe update:http://jingyan.baidu. ...