2013-02-23 91 views
0

的宽度我使用一个TextBox创造的东西可编辑的标题,看起来像一个便利贴。我改一个TextBoxRichEditBox看如果能够解决我的问题,它没有,所以我愿意改回是否有帮助。限制文字文本框

我的问题是,我不希望用户能够输入更多的字符而不是合适的TextBox的设置宽度,因为我希望整个标题是可见的。对可输入的字符数量设置一个固定的限制并不实际,因为例如10个大M将填充我的TextBox的宽度,但其他字符将只填充它的一半。所以我想比较文字的宽度和TextBox的宽度,所以我可以限制输入超出这一点。

编辑:我使用的Segoe UI字体,我真的不认为具有相等宽度作为解决方案的文字字体改为之一。

+1

见http://stackoverflow.com/questions/4219798/determine-how-wide-a-rendered-character-is-in-net或http://stackoverflow.com/questions/ 721168 /如何到确定最大小的 - 一个字符串赋予-A-字体可以帮助 – ChrisF 2013-02-23 23:26:46

+0

我试图寻找到文本框和RichEditBox的性质和基本尝试任何可能涉及到这一点。我尝试禁用Wordwrap,RichEditBox的内置滚动和AcceptsReturn属性。我尝试了DataWriter的MeasureString方法,结果是测量字符的数量。找不到任何其他测量字符串宽度的方法。 – oscar93 2013-02-23 23:33:31

+0

将它从文本框本身的宽度上移开,怎么办? – Brian 2013-02-23 23:33:40

回答

0

设置TextBox字体到快递字体,然后所有字符都是相等的宽度,并计算最大变得微不足道。

+0

因为我想要segoe字体对于windows应用程序是如此标志性的,所以并不是完美的解决方案。但仍是一个很好的备份解决方案 – oscar93 2013-02-24 11:44:07

+0

找到Segoe UI Mono字体,它具有与Courier字体相同的属性。至少接近完美。我仍然感到奇怪的是,没有更好的解决方案,所以我会保持这个问题,看看是否有人有更好的解决方案。谢谢! – oscar93 2013-02-24 11:55:39

0

Max value telling by hard coding .

我吸在编程世界。 IM试图帮助你..

+0

Thx的回应,但正如我在我的问题中所述,我已经尝试过这一点,它并没有真正解决我的问题。 – oscar93 2013-02-24 11:40:16

+0

我认为你不了解这个问题。他不想将其限制为特定的*数字*字符;他希望将其限制为文本框的实际大小。 – 2013-03-03 06:58:58