9

我有一个多行的 System.Windows.Forms.TextBox,但它不接受像 Control-A 和 Control-Backspace 这样的命令。

Control-A 什么都不做,Control-Backspace 插入一个方框字符。

“启用快捷方式”属性设置为 true。

4

1 回答 1

16

从 MSDN 上的ShortcutsEnabled属性:

当 Multiline 属性值为 true 时,TextBox 控件不支持 CTRL+A 快捷键。

你必须自己实现它。

像这样的东西应该工作:

    private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.Control & e.KeyCode == Keys.A)
        {
            textBox1.SelectAll();
        }
        else if (e.Control & e.KeyCode == Keys.Back)
        {
            SendKeys.SendWait("^+{LEFT}{BACKSPACE}");
        }
    }
于 2013-01-20T21:26:10.267 回答