鼠标滚动更改组合框的选定索引

时间:2014-10-24 05:35:49

标签: c# winforms combobox

表单上有一个组合框。

加载表单时的代码。

private void Form_Load(object sender, EventArgs e)
{
    combo.Items.Clear();
    combo.Items.Add("01");
    combo.Items.Add("02");
    combo.SelectedIndex = 1;
}

如果我滚动鼠标滚轮,它将改变组合框的索引。

如何避免这种情况?

2 个答案:

答案 0 :(得分:1)

在鼠标滚动中更改所选元素是聚焦组合框的默认行为。如果要取消此操作,可以使用[{3}}所述的PreFilterMessage函数。

答案 1 :(得分:0)

您应该更改控件​​的Tab Order。设置控件的所有Tab键顺序。

转到表单设计。单击菜单栏中的查看,然后选择Tab Order。

您的组合标签顺序不能是第一个。

如果你想改变编码,

combo.TabIndex=10;

问题是您在表单开始时选择combo。因此,滚动鼠标滚轮时,它的所选索引已更改。