如何在UserControl / ScrollableControl中接受文本输入?

时间:2012-02-24 14:20:52

标签: c# winforms .net-2.0 textinput

我创建了一个类似于控件的画布,用于绘制图像,形状和文本。此时,文本只能以编程方式添加到绘图表面。但我想实现更像WYSIWYG的文本输入法。所以基本的想法是捕获我的ScrollableControl实现中的击键。

这似乎是一项微不足道的任务 - 只需覆盖OnKeyDown方法,对吧?不完全:(这基本上意味着我必须使用SHIFT或ALT手动处理所有可能的组合键(对于非英语字母表)。

所以问题是:有一个简单的方法吗?请注意,不仅需要文本输入,还需要退格,输入,光标移动和所有内容。我觉得我错过了一些东西,通过OnKeyDown进行手动输入处理并不是最好的解决方案。

1 个答案:

答案 0 :(得分:0)

根据您希望文本输入的工作方式,您可以通过向控件添加无边框文本框并在用户开始键入时将其聚焦来实现。