界面開發控件DevExpress WPF使用 - 如何綁定到異步數據源的下拉編輯器

下載DevExpress v20.2完整版 

DevExpress WPF Subscription擁有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都不能正確使用從虛擬數據源檢索的數據。 最接近的替代方法如下:

在這兩種情況下,都可以使用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中文網,獲取第一手最新產品資訊!

DevExpress技術交流羣3:700924826      歡迎一起進羣討論

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章