如何用箭头键更改组合框(下拉列表)?

时间:2016-03-23 10:05:27

标签: c# winforms data-binding

我有一个组合框女巫是 DropDownList ,我把它绑定到一个类的属性。这个组合框填充了一个数组。

现在在运行时,当我通过鼠标点击更改所选项目时,每个事情听起来都不错。但当按箭头键更改项目时,任何事情都无法正常工作。即使是组合框的textchanged事件也不会引发。

1 个答案:

答案 0 :(得分:0)

对于ComboBoxit来说,真的很容易使用selected index changed event,而不是文本更改事件。当它改变ComboBox的选择项时,它将通过鼠标或键盘触发。

示例:

    private void CB_Company_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (CB_Company.SelectedItem.ToString() != "Select a company" & CB_Company.SelectedItem.ToString() != "")
        {
            CB_Company.BackColor = Color.White;
            CB_Company.Enabled = false;

            RB_Option1.Enabled = true;
            RB_Option2.Enabled = true;
        }
    }

填充组合框方法:

    private void SetDropDownItems()
    {
        List<DropDownModel> dropDownModel = new List<DropDownModel>();

        dropDownModel.Add(new DropDownModel()
        {
            Name = "Select a company",
            Value = ""
        });

        dropDownModel.Add(new DropDownModel()
        {
            Name = "My Company",
            Value = "Comp"
        });

        CB_Company.DataSource = dropDownModel;
        CB_Company.DisplayMember = "Name";
        CB_Company.ValueMember = "Value";
    }

我希望你明白这一点。