在下拉列表中键入时,使Windows搜索超过1个字符

本文关键字:搜索 Windows 字符 1个 下拉列表 | 更新日期: 2023-09-27 18:25:39

这可能有点令人困惑,但我将ComboBox设置为DropDownList样式。默认情况下,在该对象具有焦点时键入内容会搜索以用户键入的内容开头的项目。例如,在具有1、2和3的ComboBox中,键入1将选择1。但是,如果您有一个包含a1、a2、a3的ComboBox,则键入a1不会组合成一个字符串,而是搜索a,然后搜索1。我想知道如何以最干净的方式改变这种行为。

我想做的是创建一个ComboBox,其中包含1/8、1/16等分数,只需键入"1/8"即可访问。但是,此搜索功能一次只需要1个字符。

在下拉列表中键入时,使Windows搜索超过1个字符

如果您需要建议,可以使用以下代码块:

    var peopleAutoComplete =
                            context.People
                            .Select(c => new { c.Firstname, c.Surname })
                            .ToArray();
   List<string> peopleAutoCompleteString = new List<string>();
   foreach (var item in peopleAutoComplete)
   {
         peopleAutoCompleteString.Add(item.Surname + " " + item.Firstname);
   }
   AutoCompleteStringCollection collectionSource = new AutoCompleteStringCollection();
   collectionSource.AddRange(peopleAutoCompleteString.ToArray());
   txtbx_Surname.AutoCompleteCustomSource = collectionSource;

我的示例代码,将自动完成功能添加到"TextBox"中。