在TextBox上处理KeyUp时发出沉默声

时间:2015-01-23 22:37:35

标签: c# .net winforms

我正在使用它来允许光标前进到TextBox的下一个WinForm

private void GoToNextControl(object sender, KeyEventArgs e)
{
    if(e.KeyCode == Keys.Enter)
    {
        this.SelectNextControl((Control)sender, true, true, true, true);
    }
}

当我按下回车键时,如果没有“叮”声,这样可以完美地工作。我怎么能“沉默”丁?

2 个答案:

答案 0 :(得分:7)

在处理程序中将SuppressKeyPress设置为true应该这样做:

private void GoToNextControl(object sender, KeyEventArgs e)
{
    if(e.KeyCode == Keys.Enter)
    {
        this.SelectNextControl((Control)sender, true, true, true, true);
        e.SuppressKeyPress = true;
    }
}

确保您的处理程序与KeyDown事件相关联,因为这在KeyUp中无效。

答案 1 :(得分:1)

“Ding”声音来自未处理的Form事件。在您的表格上:  1.添加一个按钮,将其Visible属性设置为false  2.将OnClick事件处理程序添加到该按钮。保持方法为空  3.将Form的AcceptButton属性设置为新按钮。 而已。 “丁”将会消失。