Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用键盘箭头键时,如何防止组合框SelectionChangedEvent触发?_C# - Fatal编程技术网

C# 使用键盘箭头键时,如何防止组合框SelectionChangedEvent触发?

C# 使用键盘箭头键时,如何防止组合框SelectionChangedEvent触发?,c#,C#,我有一个组合框,其中填充了许多项 我已指定SelectionChangedEvent,如下所示: cbo.SelectionChangedEvent += (s, e) => DoSelectionChangedThing(); 当我点击组合框中的一个项目时,这就足够了;DoSelectionChangedThing按预期运行 问题是,如果我使用向上或向下箭头键循环浏览项目,每次我向上或向下箭头DOSELECTIONCHANGED时都会触发 有什么方法可以防止这种情况发生吗?使用事件而不

我有一个组合框,其中填充了许多项

我已指定SelectionChangedEvent,如下所示:

cbo.SelectionChangedEvent += (s, e) => DoSelectionChangedThing();
当我点击组合框中的一个项目时,这就足够了;DoSelectionChangedThing按预期运行

问题是,如果我使用向上或向下箭头键循环浏览项目,每次我向上或向下箭头DOSELECTIONCHANGED时都会触发

有什么方法可以防止这种情况发生吗?

使用事件而不是SelectionChangedEvent

在组合框的下拉列表关闭时发生


如果您检查传递到DoSelectionChangedThing的事件,您可能会知道它是否是按键和中止。小提琴会有帮助。如果用户使用鼠标滚动怎么办?不幸的是,该索引仍然会通过鼠标进行更改,并且不会引发上述eventrequires.NETFramework 4.5。这个解决方案是4.0。@DaveDev,DropDownClosed在.NET 3到4.5中。我会。。我会调查的。