0
基本上,我有一个面板内的文本框。在v1.1框架中,像ctrl + C和ctrl + V这样的快捷键对于文本框并不是隐含的,而必须针对KeyUp事件进行编码。所以,我创建了一个通用类,它继承了文本框,并有一个事件处理程序用于通过键盘快捷键进行复制和粘贴。 我有的问题是,当我按Ctrl + V在面板中的文本框内双倍复制文本。我在想,这可能是因为面板(可滚动控件)已经设置了用于粘贴的KeyUp事件,并且这个事件先发生,然后是我写的。我在想,如果有重写面板的KeyUp事件,所以它不会触发粘贴? (如果我的逻辑正确)欢迎任何想法,为什么发生双贴。 (双贴只发生在一个文本框是在面板内部)面板内的文本框.NET 1.1 KeyUp
private void dbTextBox_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyData == (Keys.Control | Keys.C)) (sender as TextBox).Copy();
if (e.KeyData == (Keys.Control | Keys.V)) (sender as TextBox).Paste();
}
可以共享的代码片断什么的关键了事件中发生了? – reggie 2011-04-11 12:17:45
'私人无效dbTextBox_KeyUp(对象发件人,System.Windows.Forms.KeyEventArgs E) \t \t { \t \t \t如果(e.KeyData ==(Keys.Control | Keys.C))(发送方被作为文本框)。复制(); (e.KeyData ==(Keys.Control | Keys.V))\t(sender as TextBox).Paste(); \t \t \t \t}' – mariusgherman 2011-04-11 12:29:49