随笔 - 750  文章 - 1  评论 - 107  阅读 - 34万

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

 

posted on   z5337  阅读(512)  评论(0编辑  收藏  举报
编辑推荐:
· 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 让容器管理更轻松!
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示