通过键入选择comboBox中的项目

pra*_*K2k 36 c# combobox winforms

我有一个组合框,里面有数百个项目.用户必须能够在组合框中键入文本.当用户键入文本时,必须选择或列出以键入值开头的项目.用户必须能够连续输入.我的ComboBox DropDownStyle是DropDownList

例如:通过键入在comboBox中选择名称时,它只允许一个字母.因此,如果我输入"A",它将跳转到以"A"开头的第一个字母.当我连续输入组合框时,所选项目根据当前按键变化.如果我按"As",组合框查看以"s"开头的项目.

我正在使用Win Forms.

提前致谢..

pra*_*K2k 74

comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDown;
comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems;
Run Code Online (Sandbox Code Playgroud)

  • 您应首先设置Source,然后设置Mode,否则会抛出NotSupportedException.然后它完美地运作 (7认同)
  • 您也可以使用这些AutoComplete选项使用`DropDownList`的`DropDownStyle`来执行此操作 - 它只是不会向用户明确显示他们到目前为止键入的键.但是,当你想让`ComboBox.Items`保持不变时,这很好. (3认同)
  • 仅供参考,这称为“增量组合框搜索”。 (2认同)