在c#中,我想通过键盘选择组合框项目,当我选择一个项目后应按Enter键。怎么做?
答案 0 :(得分:1)
尝试这样的事情......,这将解释如何使用鼠标和键盘更改项目,....
我发现这种方法在所有条件下都能正常工作。但我不确定是否有比这种方法更准确的方法。
bool IsMouse = false;
private void cmbMy_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (IsMouse)
{
//Write the logic if selection is changed by mouse
}
else
{
//Write the logic if selection is changed by keyboard
}
IsMouse = false;
}
private void cmbMy_IsMouseCapturedChanged(object sender, DependencyPropertyChangedEventArgs e)
{
IsMouse = true;
}
在组合框的isMouseCapturedChanged事件中,我将bool变量设为true,当选择更改了组合框时,我检查bool执行所需任务,然后将isMouse设置为false。
或者你需要建立自己的自定义组合框..
您需要构建一个自定义的ComboBox类并覆盖the Control.ProcessKeyEventArgs Method。