2014-09-29 58 views
0

我有一個包含很多項目的組合框。爲了演示目的,可以說「一」,「二」,「三」如何使ComboBox在項目中自動完成

我希望用戶能夠鍵入文本「e」並將完成選項縮減爲任何包含字母「e」 。從第一個字母完成它很容易:將組合框樣式設置爲DropDown以允許輸入文本,將自動完成源設置爲ListItems並將自動完成模式設置爲SuggestAppend。

但如何我擴展功能,使尋找那個包含用戶的文本,而不是開始用戶文本的項目?

是否有可以做到這一點的替代免費(更可取的開源)組合框組件?

我在堆棧溢出,代碼項目和更大的谷歌結果集上找到的所有解決方案似乎都沒有答案,沒有做出問題創建者的竅門,或者是如此特殊以至於我害怕嘗試將它們翻新爲我的十幾個相關的組合框。

回答

0

這裏有一個CodeProject上的鏈接,做你描述的正是:http://www.codeproject.com/Tips/631196/ComboBox-with-Suggest-Ability-based-on-Substring-S

由於該項目的作者所說的那樣:

的問題是:你無法定義的方式,建議項目 過濾/決心。它總是一個「StartsWith'搜索...這就是爲什麼我 決定寫我自己的類...輸入...因爲它是一個包含 - 搜索匹配一個多項目 。

+0

謝謝。我確實遇到過這種情況,但由於它實際上使用了添加到表單中的ListBox,所以它表現得有點過分。如果組合框太靠近窗體的底部邊緣,它也不會將該列表框放在窗體的底部。最終的功能幾乎正是我所追求的 – feihtthief 2014-09-29 22:51:00