界面开发控件DevExpress WPF使用 - 如何绑定到异步数据源的下拉编辑器
DevExpress WPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件的衍伸产品,还是以数据为中心的商业智能产品,都能通过DevExpress WPF控件来实现。
问题
想让组合框编辑具有无限滚动功能,例如网格控件无限异步源(https://docs.devexpress.com/WPF/120193/controls-and-libraries/data-grid/bind-to-data/bind-to-any-data-source-with-virtual-sources/virtual-sources-overview)..),每次向下滚动组合框时,它将调用rest api来获取数据并将其添加到组合框中资源。
有没有办法在组合框编辑中做到这一点?想让它像每次FetchRowsAsync方法一样简单地进行网格控制时,滚动到底部列表。
在尝试使用AutoSuggestEdit,但是ComboBoxEdit中似乎没有类似Value Member的东西? 因为需要使用另一个属性(例如“ Id”)将值存储在Edit Value中,但文本成员是从字符串属性(例如“ Description”)中获取的。
解决方案
LookUpEdit和ComboBoxEdit都不能正确使用从虚拟数据源检索的数据。 最接近的替代方法如下:
- 请改用即时反馈数据源来替代;
- 使用AutoSuggestEdit并处理其QuerySubmitted 事件,请参见以下示例:How to use AutoSuggestEdit with InfiniteAsyncSource.
在这两种情况下,都可以使用PopupContentTemplate属性来自定义弹出窗口中放置的GridControl,以使其根据需要显示。另请参见LookUpEdit - How to Customize the embedded grid control。
AutoSuggestEdit没有ValueMember,该编辑器使用动态数据,无法访问整个源集合。 因此它无法通过ID查找和显示数据源对象,如果只需要从AutoSuggestEdit的下拉列表中选择的对象中检索ID,则可以处理RecommendationionChosen事件:
C#
void SuggestionChosen(object sender, AutoSuggestEditSuggestionChosenEventArgs e) { var id = ((Customer)e.SelectedItem).CustomerId; }
DevExpress技术交流群3:700924826 欢迎一起进群讨论
【推荐】国内首个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框架的用法!
2019-02-02 VCL界面控件DevExpress VCL Controls发布v18.2.4|附下载