使用C#使用Ctrl + V获取关联文本

时间:2011-08-05 09:20:36

标签: .net winforms

我使用富文本框输入一些变量。 我限制用户输入一些特殊字符。 但是,用户可以通过从记事本复制并将其粘贴到文本框中来输入相同的值。 如何限制用户这样做?

谢谢, 纳雷什

4 个答案:

答案 0 :(得分:0)

您好,为了防止在KeyDown事件处理程序中从剪贴板粘贴,您可以检查是否按下Ctrl,如果是,则将e.handled设置为true。这应该工作:)

答案 1 :(得分:0)

您可以编写自己的过滤方法/类。所以有时候(不管是计时器,事件,等等)检查坏的charackters和垃圾吧!

答案 2 :(得分:0)

我认为这是一个很好的问题:

Intercept paste event on HtmlEditor WinForms

您必须对其进行子类化并通过覆盖WndPrc来阻止粘贴消息进一步缩小。然后,调用您自己的函数来处理粘贴。

我认为有一种更简单的方法来定位粘贴消息。忽略他插入内容的代码,因为这不适用于RTF。

答案 3 :(得分:0)

我会看一下使用TextChanged事件,在处理程序中你可以解开处理程序,修改文本,然后重新挂钩处理程序(以避免它自动调用它)

这也适用于用户右键单击并从上下文菜单中选择粘贴,我不确定是否会触发KeyDown事件。