「应用界面美化」DevExpress Winform数据网格如何绑定数据
DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!
先决条件
平台:
- Frameworks (XAF & XPO)
- WinForms
产品:
这些新的只读服务器模式组件是XPServerCollectionSource/XPInstantFeedbackSource和XPView 的混合,可与DevExpress Grid控件一起使用。
它们提供以下内容:
- 能以较低的内存使用量处理大型数据源(不会加载整个持久对象实例)。
- 能自定义SELECT语句并排除未使用的数据列。
- 能在根查询中包括引用属性数据,以避免1 + N问题。
- 能包含使用ServerViewProperty在服务器端计算的自定义(虚拟)属性。
在将这些组件用作网格的数据源之前,请按以下方式配置它们:
1. 在代码或组件设计器中设置ObjectType和Properties,ServerViewProperty支持表达式中的持久性或别名属性。
C#
xpServerModeView1.ObjectType = typeof(Order); xpInstantFeedbackView1.ObjectType = typeof(Order); var viewProperties = new ServerViewProperty[] { new ServerViewProperty("Oid", SortDirection.Ascending, "[Oid]"), new ServerViewProperty("OrderDate", SortDirection.None, "[OrderDate]"), new ServerViewProperty("Customer", SortDirection.None, "[Customer.ContactName]"), new ServerViewProperty("ProductName", SortDirection.None, "[ProductName]"), new ServerViewProperty("Price", SortDirection.None, "[Price]"), new ServerViewProperty("Quantity", SortDirection.None, "[Quantity]"), new ServerViewProperty("TotalPrice", SortDirection.None, "[Quantity] * [Price]"), new ServerViewProperty("Tax", SortDirection.None, "[Quantity] * [Price] * 0.13") }; xpServerModeView1.Properties.AddRange(viewProperties); xpInstantFeedbackView1.Properties.AddRange(viewProperties);
2. 处理ResolveSession事件来提供一个Session,以从数据存储中检索对象。
C#
session = new Session(XpoDefault.DataLayer); xpServerModeView1.ResolveSession += (s, e) => { e.Session = session; }; xpInstantFeedbackView1.ResolveSession += (s, e) => { e.Session = session; };
3. 对于XPInstantFeedbackView,可以选择处理DismissSession事件以手动处理在ResolveSession事件处理程序中创建的Session。
C#
xpInstantFeedbackView1.DismissSession += (s, e) => { IDisposable session = e.Session as IDisposable; if (session != null) { session.Dispose(); } };
DevExpress技术交流群2:775869749 欢迎一起进群讨论
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2017-12-15 DevExpress WPF入门指南:如何自动或手动添加DXSplashScreen控件