2016-07-19 44 views
0

需要妥善的解决办法:C#组合框添加项目,如用户键入的文本

  1. 在组合框的用户类型。
  2. 对于每个字母都键入从互联网返回的匹配名称列表。
  3. 组合框下拉列表获取项目和组合框中的文本保持不受影响。

我的代码:

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()); 
    } 

上面的代码工作,但列表中犯规得到掉了下来,文字光标会很奇怪,有时抛出一个错误。

回答

0

要打开一个双赢的窗体ComboBox编程:

comboBoxSearchName.DroppedDown = true; 
相关问题