如何使用快捷方式C#更改ComboBox的选定值

时间:2017-12-11 14:19:29

标签: c# winforms combobox keyboard-shortcuts

首先让我说我是C#的新手...... 我正在使用WinForms:我已尝试使用此代码更改ComboBox的值以使用快捷方式。我也尝试使用SelectedValue而不是SelectedIndex。之后我尝试在改变值之前或之后关注ComboBox。最后我尝试将其转换为stwitch语句,但每次执行它都没有任何反应 我正在使用Visual Studio 2017 - 当我尝试调试它时,调试器向我显示,在执行if语句中的代码后,它进入else语句并再次执行代码...

private void Form_KeyDown(object sender, KeyEventArgs e)
{
    if (e.Control && e.KeyCode == Keys.E)
    {
        //CBoxLimit.Focus();

        if (CBoxLimit.SelectedIndex == 0)
        {
            CBoxLimit.SelectedIndex = 1;
        }

        else
        {
            CBoxLimit.SelectedIndex = 0;
        }

        //CBoxLimit.Focus();
    }
}

先谢谢你的帮助......

1 个答案:

答案 0 :(得分:0)

您似乎应该更改SelectedIndex实例上的ComboBox而不是CBoxLimit。您还应将表单KeyPreview属性设置为True(请参阅here):

        private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.E)
            {
                comboBox1.SelectedIndex = 1;
            }
        }