DevExpress 组件
最近看到 伍华聪 的博客里, DevExpress 组件那个效果很好看,特别是
LookUpEdit GridLookUpEdit 这两个控件,完美改善了 WinForm 里的 ComboBox
今天拿它在程序里试用,遇着不少让人纠结的地方,写出来供看此文章的人参考,以免掉同一坑里。
1. Properties 这个属性里有更多调节选项,比如 右边多出一个 √
你也可以在 Button 属性里增加一个 × 这样右边就多出一个 ×
2. 习惯上我们会先绑定一个 DataTable 之后手动设定标题列
所以代码里
1 DataTable dt = SqlHelper.GetDataTable("select 1 a,2 b"); 2 lookUpEdit1.DataSource = dt; 3 lookUpEdit1.DisplayMember = dt.Columns[0].ColumnName; 4 lookUpEdit1.Properties.Columns[0].Caption = "标题一";
可这样写直接报错,提示是没找到 Columns[0]
调试发现绑定后的 Columns.Count = 0 !!
后来在国外网站上找着一行代码:
1 lookUpEdit1.Properties.PopulateColumns();
但看不懂英文,拿 ILSpy 看它的实现,就是一个 for 循环给 LookUpEdit 增加列。
在修改标题前加上这行代码,OK~
// 2014年7月14日14时35分25秒
今天写代码时又遇着此问题,然后
1 lookUpEdit1.Properties.ForceInitialize(); 2 lookUpEdit1.Properties.PopulateColumns();
解决~
这个也适用于绑定后隐藏指定列。
[参考]http://www.devexpresscn.com/DevExpress-Resources/Documentation-167.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!