关于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;
}`

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理