翻譯|使用教程|編輯:龔雪|2020-01-09 09:18:05.790|閱讀 476 次
概述:本文中,小編將為大家介紹WinForms Lookup Editors控件的一些功能,并說明如何為下一個WinForms項目選擇適當的WinForms查找。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
下載DevExpress v19.2完整版 DevExpress v19.2漢化資源獲取
DevExpress Winforms Controls 內置140多個UI控件和庫,完美構建流暢、美觀且易于使用的應用程序。在本文中,小編將為大家介紹WinForms Lookup Editors控件的一些功能,并說明如何為下一個WinForms項目選擇適當的WinForms查找。
已發布的v19.2版本將為LookUpEdit和GridLookupEdit控件(自動建議)包含一個很棒的新功能。 在解釋此新功能之前,現將其與現有的自動完成模式區分開,可以使用組件的SearchMode屬性啟用自動完成功能。處于激活狀態時,自動完成功能將強制綁定查詢編輯器查找與用戶輸入的文本匹配的記錄,并顯示其在查詢中找到的第一項:
要激活自動建議,您需要將SearchMode設置為AutoSuggest。 與AutoComplete(在數據綁定的查找中隱藏不匹配的記錄)不同,AutoSuggest在用戶輸入文本時動態更改編輯器的數據源(因此,它可以與完全空的、未綁定的編輯器一起使用)。
每次用戶輸入新字符時,查找編輯器都會觸發AutoSuggest事件。 必須處理此事件并為其分配一個自定義的System.Threading.Tasks.Task對象。 此異步可取消任務必須返回記錄的集合,這些記錄將被視為編輯器源。
lookUpEdit1.AutoSuggest += OnAutoSuggest; void OnAutoSuggest(object sender, LookUpEditAutoSuggestEventArgs e) { // Set delay (if needed) e.SetMinimumAnimationDuration(TimeSpan.FromMilliseconds(1000)); // Assign a Task that return suggestions e.QuerySuggestions = WorldCities.QueryAsync(e.Text, e.CancellationToken); }
實施Task的方式完全取決于您:在演示中,將解析一個巨大的本地存儲的Excel文件。 您可以從數據庫文件檢索數據,也可以發送SQL查詢并從遠程服務器檢索記錄。
當查找獲得下拉項目時,編輯器將掃描這些記錄并突出顯示與用戶文本匹配的項目標題的所有部分。 此默認邏輯涵蓋了許多簡單的場景,但是如果需要,您可以自由實施自定義突出顯示模式。
在演示中,“Enter the city name” 查找由一個任務填充,該任務搜索城市和州名稱中的匹配項。 但是,查找記錄也包含國家/地區名稱。 默認的突出顯示模式不適合這樣的情況,因為它突出顯示了國家名稱中的字符(Task忽略了這些字符)。
要解決此不匹配問題,將自定義方法分配給SetHighlightRanges事件參數。
void OnAutoSuggest(object sender, LookUpEditAutoSuggestEventArgs e) { //... // Set Custom Highlight Strategy e.SetHighlightRanges(HighlightTags(e.Text)); }
DevExpress v19.2全新發布,歡迎下載最新版體驗哦~
DevExpress技術交流群:540330292 歡迎一起進群討論
掃描關注DevExpress中文網微信公眾號,及時獲取最新動態及最新資訊
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網