2011-12-01 69 views
4

我有一個ComboBox在菜單模式下巨大的名稱的數量,並提示用戶選擇一個特定的。在C中鍵入ComboBox#

如果用戶想要,比如說「尼爾」,那麼他們首先按'n',這會導致以'n'開頭的名字:納什。然後,在按下'n'後快速按下'e',他們希望能夠顯示所有以'ne'開頭的名字,但這不會發生。它帶來了所有以'e'開頭的名字。

不管用戶輸入的速度有多快,如果用焦點框輸入「neil」,它將顯示以'l'開頭的名稱。

有什麼方法可以改變這種行爲嗎?

回答

6

你必須設置以下屬性:

comboBox1.AutoCompleteMode = AutoCompleteMode.Suggest; 
comboBox1.AutoCompleteSource = AutoCompleteSource.HistoryList; 

,它會做像你期望的那樣。

還有一些設置爲AutoCompleteSource的可能性。您將在MSDN中找到幫助。

+2

您需要設置其他自動完成才能使其工作。 – DaveShaw

+0

@DaveShaw:你說的沒錯。感謝你解決這個問題。我改變了我的答案。 – Fischermaen

+0

我使用了'AutoCompleteSource.ListItems',它工作。 – user1002358