Wil*_*ire 4 vb.net visual-studio-2010 beep
我在vb.net上做了一个快速的网络浏览器,我有它,所以当你按Enter键导航到textbox1中的网页.唯一的问题就是每次按下回车都会发出哔哔声.我尝试使用e.Handled = True,但它没有做任何事情.这是我的按键代码
Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyCode = Keys.Enter Then
e.Handled = True
WebBrowser1.Navigate(TextBox1.Text)
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
我以为e.Handled会让那令人讨厌的嘟嘟声消失,但事实并非如此.
KeyEventArgs您想要的属性不是Handled而是SuppressKeyPress.
即
Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
WebBrowser1.Navigate(TextBox1.Text)
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
从第一个MSDN链接:
Windows窗体中的不同控件以不同方式实现处理.对于TextBox这样的控件,它是本机Win32控件的子类,它被解释为意味着不应将关键消息传递给底层本机控件.如果在TextBox上将Handled设置为true,则该控件不会将按键事件传递给基础Win32文本框控件,但它仍会显示用户键入的字符.
如果要阻止当前控件接收按键,请使用SuppressKeyPress属性.
| 归档时间: |
|
| 查看次数: |
3673 次 |
| 最近记录: |