TextBox Ctrl+A不能全选的问题


TextBox Ctrl+A不能全选的问题
问题:
当TextBox控件在设置了MultiLine=True之后,Ctrl+A 无法全选,十分影响使用体验。
对于这个问题不明所以,不知道是Bug,还是故意而为之。。。

解决1:
添加KeyDown或者KeyUp事件

if (e.Modifiers == Keys.Control && e.KeyCode == Keys.A)
{
  ((TextBox)sender).SelectAll();

**但是上面代码会有个问题,如果你的电脑有喇叭的话,按下Ctrl+A会发出 咚的一声警报声。

解决2:
使用KeyPress事件完美解决。

if (e.KeyChar == '\x1')
{
    ((TextBox)sender).SelectAll();
    e.Handled = true;
}
上面多了行代码e.Handled=true 我开始看到这行代码以为是这行起的作用,尝试把这行代码复制到 解决1 的事件中,结果发现无效


程序代码:

   Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress
        If e.KeyChar = ChrW(1) Then
            CType(sender, TextBox).SelectAll()
            e.Handled = True
        End If
    End Sub




《江苏省装配式建筑综合评定标准》(无水印)2020.05

填充图案对象特性中不显示面积

欢迎关注微信公众账号ByCAD