繁体   English   中英

C#ComboBox添加项目作为用户键入文本

[英]c# ComboBox add items as user types text

需要适当的解决方案:

  1. ComboBox中的用户类型。
  2. 对于每个键入的字母,都会从互联网返回匹配名称的列表。
  3. ComboBox下拉列表中充满了项目,comboBox中的文本不受影响。

我的代码:

    private void InitializeComboBoxSearchSymbol()
    {
        comboBoxSearchName.ValueMember = "first_name";
        comboBoxSearchName.DisplayMember = "first_name";
        comboBoxSearchName.AutoCompleteMode = AutoCompleteMode.None;
        comboBoxSearchName.SelectedIndexChanged += comboBoxSearchName_SelectedIndexChanged;
        comboBoxSearchName.KeyDown += SearchNameTextChanged;
    }


    private void comboBoxSearchName_SelectedIndexChanged(object sender, EventArgs e)
    {

    }

    private void SearchNameTextChanged(object sender, KeyEventArgs e)
    {
        YahooData yd = new YahooData();
        List<Name> listNames = yd.YahooNameLookup(comboBoxSearchName.Text);
        comboBoxSearchName.Items.Clear();
        comboBoxSearchName.Items.AddRange(listNames.ToArray());
    }

上面的代码有效,但list不会被下拉,文本光标变得很奇怪,有时会引发错误。

要以编程方式打开Win Forms组合框:

comboBoxSearchName.DroppedDown = true;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM