面板内的文本框.NET 1.1 KeyUp

时间:2011-04-11 12:11:01

标签: c# .net .net-1.1

基本上,我在面板中有一个文本框。在v1.1框架中,ctrl + C和ctrl + V等快捷方式不是隐含的文本框,必须为KeyUp事件编码。因此,我创建了一个继承文本框的通用类,并具有一个用于通过键盘快捷方式进行复制和粘贴的事件处理程序。 我遇到的问题是,当我在面板中的文本框中按Ctrl + V时,它会双重复制文本。我认为这可能是因为面板(可滚动控件)已经设置了粘贴的KeyUp事件,并且首先触发,然后是我写的那个。我在想是否还有覆盖面板的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(); 
}

1 个答案:

答案 0 :(得分:0)

您是否尝试过e.Handled = true;