none
关于KeyDown组合键的问题 RRS feed

  • 问题

  • 我想让TextBox支持Ctrl+V粘贴功能,在textBox1的KeyDown事件中这样写代码的
    if (e.Control && e.KeyCode == Keys.V)
    {
             …代码段…
    }
    但是总是走不到代码段处,不知道是什么地方出错了。
    业精于勤,荒于嬉,行成于思,毁于随。
    2009年6月23日 11:51

答案

  • 找到原因了,原来是主窗体的菜单上的快捷键影响了子窗体上快捷键的响应。
    业精于勤,荒于嬉,行成于思,毁于随。
    2009年6月23日 13:25

全部回复

  • 你的代码是没有问题的,但TextBox 本身就支持粘贴为何要自己写呢?
    知识改变命运,奋斗成就人生!
    2009年6月23日 12:09
    版主
  • 你好!
         TextBox本身就支持Ctrl+V功能了啊!不用自己实现的啊!
    周雪峰
    2009年6月23日 12:12
    版主
  • 不支持啊,是否什么属性设置后支持呢?
    如果支持了,我就不用再写代码实现了。
    业精于勤,荒于嬉,行成于思,毁于随。
    2009年6月23日 12:50
  • 默认就支持了
    知识改变命运,奋斗成就人生!
    2009年6月23日 12:50
    版主
  • 我测试了,就是不支持Ctrl+V粘贴,只能右键出TextBox 自带的右键菜单粘贴才可以。
    业精于勤,荒于嬉,行成于思,毁于随。
    2009年6月23日 12:55
  • 再仔细测试了一下,不知道正确不正确,我发现在多文档窗体的子窗体上的TextBox不支持Ctrl+V,不知道是哪儿的设置问题。
    业精于勤,荒于嬉,行成于思,毁于随。
    2009年6月23日 13:09
  • 找到原因了,原来是主窗体的菜单上的快捷键影响了子窗体上快捷键的响应。
    业精于勤,荒于嬉,行成于思,毁于随。
    2009年6月23日 13:25
  • 我也用MDI窗体的子窗体测试了一下,也是默认支持Ctrl+V的啊。
    如果你一定要手工控制,请把你的代码挪到KeyUp事件中试试,在我测试的时候发现奇怪问题就是,能捕获到Ctrl+V的按键,但是会多输出2、3个类似Tab的字符。

    理解的越多,需要记忆的就越少
    2009年6月23日 13:25
    版主