.net中自定义形状的文本框/编辑控件?

时间:2009-06-02 16:24:24

标签: .net editor textbox shape editcontrol

我正在寻找一种在自定义形状框(例如圆形)内显示和编辑文本的方法。 文本需要尽可能多地使用允许的空间,因此只需将编辑框放在形状内部就不够了。

要求:

  1. 给定GraphicsPath和字符串,在路径中绘制文本。如果文本溢出,则截断或引发事件。
  2. 允许用户编辑GraphicsPath中的文本。
  3. 关于标准文本框的所有智能 单词休息,自动换行,本地化。
  4. 似乎没有任何符合这些要求的控件。它可能需要低级别的行布局API来实现这一点,我在MSDN中找不到关于Windows中此类API的文档。

    这是一个高精度工具,所以我们愿意付出很多努力来获得我们需要的东西。

    提前致谢!

1 个答案:

答案 0 :(得分:0)

因为您已经提到它是高精度工具,所以我完全避免依赖内置的TextRenderer方法,因为它们在准确性和一致性方面存在问题。

至于整形编辑控件,是指将其形状从矩形更改为圆形,还是控件仍然占据矩形区域?如果是前者,则可以更改Region属性或P / Invoke SetWindowRgn系列。