C# 如何防止在WinForms文本框中按alt键时发出嘟嘟声?
我正在创建一个例程,允许用户将键盘快捷键复制到文本框中进行“自定义键盘快捷键”自定义,但每次用另一个字母按下alt键时,都会产生另一种声音 我正在捕获textbox_keydown事件中的键,以将修饰符+其他键解析为可读的Shift+a或Ctrl+Shift+B方式,并将其解析为同一个文本框。我是否应该在不同的事件(如textbox\u previewkey而不是textbox\u keydown)中执行此操作?如何防止alt modifier键+字母或数字导致蜂鸣音 文本框只是一个普通的.net 3.5文本框,其唯一编辑的属性是只读属性,设置为false。有没有更好的办法让我重做C# 如何防止在WinForms文本框中按alt键时发出嘟嘟声?,c#,winforms,C#,Winforms,我正在创建一个例程,允许用户将键盘快捷键复制到文本框中进行“自定义键盘快捷键”自定义,但每次用另一个字母按下alt键时,都会产生另一种声音 我正在捕获textbox_keydown事件中的键,以将修饰符+其他键解析为可读的Shift+a或Ctrl+Shift+B方式,并将其解析为同一个文本框。我是否应该在不同的事件(如textbox\u previewkey而不是textbox\u keydown)中执行此操作?如何防止alt modifier键+字母或数字导致蜂鸣音 文本框只是一个普通的.ne
我目前正在检查是否按下了任何修改器键,然后按下+a-z或0-9,然后继续将适当按下的键输入到同一文本框中,如Shift+a或Ctrl+Shift+Y。您需要设置
e.Handled=true
为了防止击键冒泡。忽略,我能够通过从一开始就抑制键码而解决问题,而不会影响其正常功能。以下是我使用的:
e.SuppressKeyPress = (e.KeyCode == e.KeyCode);
处理文本框的KeyDown事件,例如使用void HandleKeyDown(对象源,KeyEventArgs e)和内部输入:
if(e.Alt)e.SuppressKeyPress=true代码>
(也适用于返回键)您意识到这与说e.SuppressKeyPress=true相同,对吗?除非KeyCode
返回double.Nan
;)+你的问题和回答对我很有用。谢谢。如果方法调用中有一个消息框,则可能无法按预期工作。看,嗨,我也有同样的问题,e.Handled=true没有解决问题。e、 SuppressKeyPress=true成功了。