2010-03-19 44 views
0

请参阅此控件 http://www.charlespetzold.com/blog/2009/10/Using-Text-Outlines-in-Silverlight.html formattedtext控件是一种形状,它有助于生成具有适当几何图形的文本形状。我想让这个控件像一个带有游标的文本框,以及从键盘输入的功能。 现在我使用带有格式化文本控件的不可见文本框来表现这种情况。但是,当文本的大小不等于渲染文本的大小时,光标位置总是会产生问题。如何创建一个像文本框一样的形状?

任何人都可以请展示实现这一目标的方式。

回答

0

好吧,我使用您描述的方法构建了一个语法高亮文本框。实际上,起初我想重建一切,但我想:我必须建立插入符号,选择画笔,管理很多不同的事件,例如使用鼠标或键盘进行选择,删除,复制/剪切/粘贴,等等......

这是很多工作,并且windows用户被用来选择文本框中的文本,所以这个复杂的实现不能被实现。我们必须遵循一些关于文本框必须如何感受的Microsoft指导。

其实,我认为从头开始构建一个新的文本框是不行的。我建议你继续使用你目前的方法。如果在同一文本框中有不同的字体,请使用RichTextBox,并处理文本框中的字体更改以及格式化文本中的字体更改。

此外,一个好的思想实现是只绘制格式化文本(但只有当用户可以写几百个文本行)的可见文本。

相关问题