使用OnKeyUp在TextBox中按Enter键时避免使用Windows"Ding"

ibr*_*ram 9 .net beep winforms

如果用户点击带有KeyUp事件的Windows窗体文本框,则会发出哔哔声或叮当声.我无法确定为什么会发生这种情况以及如何避免这种情况.

任何帮助,将不胜感激.

Cam*_*tin 11

摆脱声音的实际解决方案:

private void TextBox_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        e.SuppressKeyPress = true;
    }
}
Run Code Online (Sandbox Code Playgroud)


Ben*_*igt 8

我想这是由以下因素组合引起的:

  • MultiLine = false
  • 表单上没有默认按钮

因为单行文本框将回车键转发到默认按钮.无法找到默认按钮时会生成ding.