问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何获取gridlookupedit的值

发布网友 发布时间:2022-05-03 02:43

我来回答

1个回答

热心网友 时间:2023-10-08 14:50

一.LookUpEdit控件简单使用: 下面是使用到的基础数据

public class Proct
{
public int Id { get; set; }
public string Model { get; set; }
public string Name { get; set; }
}
public class Entility
{
private static string GetChar(int number)
{
string[] array = new string[] { "A","B","C","D","E","F","G","H","I"};
string result = array[number % 9];
return result;
}
private static string GetName(int number)
{
string[] array =
{
"Unitch数据采集器","MS扫描*","105SL","TSC","PH880","MS320便携式打印机","PA700","DSX800电脑","HP打印机"
};
string result = array[number % 9];
return result;
}

public static List<Proct> GetProctList()
{
List<Proct> list = new List<Proct>();
for (int i = 0; i < 200; i++)
{
Proct proct = new Proct()
{
Id=100+i,Model=GetChar(i)+i.ToString()+"DLJ",Name=GetName(i)+i.ToString()
};
list.Add(proct);
}
return list;
}
public static DataTable GetDataTable()
{
DataTable dt = new DataTable();
dt.Columns.Add("Id",typeof(System.Int32));
dt.Columns.Add("Model", typeof(System.String));
dt.Columns.Add("Name", typeof(System.String));
for (int i = 0; i < 200; i++)
{
DataRow dr = dt.NewRow();
dr["Id"] = 100 + i;
dr["Model"] = GetChar(i) + i.ToString() + "DLJ";
dr["Name"] = GetName(i) + i.ToString();
dt.Rows.Add(dr);
}
return dt;
}
}

先看一下效果:

数据绑定:

List<Proct> list = Entility.GetProctList();
lookUpEdit1.Properties.DataSource = list;

添加显示的列:找到属性列表---添加要绑定的列。如果没有添加列 根据属性名称 自动生成列

简单属性设置:

//双击显示下拉列表
lookUpEdit1.Properties.ShowDropDown = ShowDropDown.DoubleClick;
lookUpEdit1.Properties.ImmediatePopup = true;//显示下拉列表
lookUpEdit1.Properties.TextEditStyle = TextEditStyles.Standard;//允许输入
lookUpEdit1.Properties.DropDownRows = 12;//默认显示的行
lookUpEdit1.Properties.PopupWidth = 350;//设置宽带
lookUpEdit1.Properties.NullText = "";//清空默认值

二.GridLookUpEdit控件简单使用
效果:

数据绑定:

List<Proct> list = Entility.GetProctList();
gridLookUpEdit1.Properties.DataSource = list;

添加显示的数据列:并进行数据绑定 设置列的宽度

GridLoolUpEdit 默认 是根据 DisplayMember 绑定的字段 进行模糊筛选。

设置根据多列筛选功能:

private void FilterLookup(object sender)
{

GridLookUpEdit edit = sender as GridLookUpEdit;
GridView gridView = edit.Properties.View as GridView;
FieldInfo fi = gridView.GetType().GetField("extraFilter", BindingFlags.NonPublic | BindingFlags.Instance);
BinaryOperator op1 = new BinaryOperator("Id", "%" + edit.AutoSearchText + "%", BinaryOperatorType.Like);
BinaryOperator op2 = new BinaryOperator("Model", "%" + edit.AutoSearchText + "%", BinaryOperatorType.Like);
BinaryOperator op3 = new BinaryOperator("Name", "%" + edit.AutoSearchText + "%", BinaryOperatorType.Like);
string filterCondition = new GroupOperator(GroupOperatorType.Or, new CriteriaOperator[] { op1, op2,op3 }).ToString();
fi.SetValue(gridView, filterCondition);

MethodInfo mi = gridView.GetType().GetMethod("ApplyColumnsFilterEx", BindingFlags.NonPublic | BindingFlags.Instance);
mi.Invoke(gridView, null);
}

private void gridLookUpEdit1_EditValueChanging(object sender, DevExpress.XtraEditors.Controls.ChangingEventArgs e)
{
BeginInvoke(new MethodInvoker(delegate()
{
FilterLookup(sender);

}));
}

对筛选的列 显示行号

private void gridLookUpEdit1View_CustomDrawRowIndicator(object sender, RowIndicatorCustomDrawEventArgs e)
{
if (e.Info.IsRowIndicator && e.RowHandle >= 0)
{
e.Info.DisplayText = (e.RowHandle + 1).ToString();
}
}

一些简单的属性设置:

//双击显示下拉列表
gridLookUpEdit1.Properties.ShowDropDown = ShowDropDown.DoubleClick;
gridLookUpEdit1.Properties.ImmediatePopup = true;//显示下拉列表
gridLookUpEdit1.Properties.TextEditStyle = TextEditStyles.Standard;//允许输入
gridLookUpEdit1.Properties.NullText = "";//清空默认值

设置下拉列表宽度

如果有错误的地方,欢迎同行指正!!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
股骨头坏死手术方式 退订金没有收据了怎么办 泸州台湾通行证外地人补办时间 运动手表安全吗(运动手表对身体有害吗) 扫地机器人随机式和规划式的区别 茶怎么喝才正确 如何查找电线接头 炸鱼片的做法 如何制作炸鱼片 福建泉州哪里有织带厂在招工 Apple 苹果 MacBook Air 2014款-适用对象 gridcontrol中怎么实现gridlookupedit 联动事件 网上卖了已经开锅好了的铁锅,使用了几天时间,现在感觉是涂层的锅,过一夜就生锈了,请大神指点迷津? 达芬奇密码的电影男主角叫什么名字? 绝望主妇第七季中Lynette的女儿是不是换演员了?记得第六季里Penny的眼睛没这么大的。。 生活大爆炸里面,penny打算辞掉餐厅的工作专心做演员但没得到Lenard的支 当主角的名字出现在屏幕上时,为什么经常会有一个演员被扮演角色? 生活大爆炸 第二季新女邻居 演员 迷失中Penny,Juliet与Sarah是同一个演员吗?她们仨长得好像。 生活大爆炸 Leonard给Penny讲刚搬进来的故事是哪集?其中有情节是Sheldon把电梯弄坏,但救了Leonard一命 《生活大爆炸》最后一次录制,楼里的电梯能修好吗? 天才大爆炸中的 谢尔顿 扮演者 简历 绝望主妇第六季中lynette的女儿penny的饰演者是谁 绝望主妇第六季中lynette的女儿penny的饰演者是谁啊? 生活大爆炸Penny爱的是谁? 请问迷失里面 饰演Penny的演员是谁?我看着这个人长的和约翰屈伏塔很像。。 美剧《生活大爆炸》里饰演Penny的人是谁呀? 是谁演的,佩妮(Penny)扮演者,生活大爆炸佩 做VC 和PE的股权投资和风险投资,应该要找哪里的部门??? 如何联系到风险投资? 怎么获得联想创投投资人的联系方式? gridLookUpEdit控件在得到了数据源之后,怎么设置默认选择第一项 Devexpress 中GridLookUpEdit的实现多列筛选问题。 求助GridLookUpEditor的数据源清空问题 DEV中的GridControl控件某列绑定GridLookupEdit,用于实现模糊查询(winfrom) 关于有做过gridControl中的repositoryItemGridLookUpEdit的吗 每个人老了之后都会有白发,人为何会长白发? repositoryItemGridLookUpEdit怎么定义各列的宽度 winform如何给LookUpEdit.text值赋 请C#大侠帮忙翻译这段代码为VB.Net的,谢谢了! 什么原因导致人长白发? LookUpEdit控件怎么设置它的默认值 吃什么能不长白头发?长白头发是什么原因造成的? 人为什么要长白发 DevExpress LookupEdit 控件,如何设置不弹出下拉框。现在的做法是弹出后马上关闭,但总会闪一下出来。。 RepositoryItemSearchLookUpEdit 怎么使用,怎么得到选择值 为什么我的SearchLookUpEdit看不见内容? 请教gridLookUpEdit 多选之后,数据上不去,怎么回事?? 如何在LookUpEdit中实现多列过滤 求教如何动态更新RepositoryItemGridLookUpEdit 的筛选条件 excel全表用2位小数怎么表示?