如何在winforms文本框中检测传入文本ctrl-v粘贴?

如何在winforms文本框中检测传入文本ctrl-v粘贴?,winforms,c#-4.0,textbox,Winforms,C# 4.0,Textbox,我正在创建自己的commentbox控件,该控件继承自winforms文本框。它所做的一件事是防止用户在达到限制时输入任何字符。所以在按键事件中,我只需抓取传入的键(除了delete和backspace)并将其添加到文本框中,然后检查并查看长度。如果结束了,那么我只需将e.Handled设置为true,然后按键停止。但在传入的ctrl-v粘贴事件中,此方案使我失败。它注册为一个输入的keychar。因此,如果我在限制范围内,粘贴将不会通过,但如果房间中有一个字符,并且粘贴有两个或更多字符,则粘贴

我正在创建自己的commentbox控件,该控件继承自winforms文本框。它所做的一件事是防止用户在达到限制时输入任何字符。所以在按键事件中,我只需抓取传入的键(除了delete和backspace)并将其添加到文本框中,然后检查并查看长度。如果结束了,那么我只需将e.Handled设置为true,然后按键停止。但在传入的ctrl-v粘贴事件中,此方案使我失败。它注册为一个输入的keychar。因此,如果我在限制范围内,粘贴将不会通过,但如果房间中有一个字符,并且粘贴有两个或更多字符,则粘贴将通过

我只需要一种方法来检测这个粘贴正在进入,当它进入时,我需要知道字符串的长度,这样我就可以阻止它发生,或者将尽可能多的粘贴到那里


谢谢

这是个无聊的问题。您只需设置textbox的MaxLength属性,它就可以阻止所有这一切。嗯。

这是个无聊的问题。您只需设置textbox的MaxLength属性,它就可以阻止所有这一切。Duh.

我正要斥责你屈尊俯就OP。然后我注意到你就是OP:d编程所做的一件事是防止傲慢:)我正要斥责你屈尊俯就OP。然后我注意到你就是OP:d编程所做的一件事是防止傲慢:)