2011-06-05 81 views
8

如何对齐RichTextBox中的文本?如何在RichTextBox C#中“对齐”文本?

RTB

基本上,RTB包含:

“--testing”

“--TESTING”

“TESTING--”

“testing-- “

哪一个都有相同数量的cha但是有不同的路线。我如何正确对齐它们?对于C#来说,我相当新,并且因为它在Java的TextArea中正确对齐而感到困惑。

谢谢!

+0

只需使用等宽字体。 – svick 2011-06-05 13:57:16

+0

在这种情况下,“对齐”是什么意思? – ChrisF 2011-06-05 13:57:19

回答

6

您必须将字体更改为等宽字体,例如Courier。您显示的这种行为对于大多数字体是标准的,因为并非所有字符的宽度都相同。

+0

我不敢相信它就这么简单。我测试了其他字体,但不幸的是,它们不是等宽字体,我只是放弃了。感谢那! – user488792 2011-06-07 04:10:02

+0

简单,基本和辉煌。所以很明显,但我永远不会想到它在一百万年... – AndyUK 2017-11-30 08:46:07

26

您想使用RichTextBox.SelectionAlignment属性。

举例来说,如果你想为中心的整个文本框,然后你会做:

richTextBox1.SelectAll(); 
richTextBox1.SelectionAlignment = HorizontalAlignment.Center; 

如果你想只具有一定的对齐文本框的一部分,然后使用RichTextBox.Select()函数来选择文本,然后设置SelectionAlignment属性。

+3

有没有什么办法可以在RichTextBox中附加文本时定义文本对齐?否则,我必须追加文本,然后找到我插入的文本,选择它,然后更改它的对齐方式。 – 2012-05-29 12:31:56

+0

SelectionAlignment在WPF中不存在:( – T4NK3R 2016-09-12 13:26:27

1

除非是非常必要的,你使用了丰富的文本框,你可以简单地用一个文本框,然后选择定位为

textbox.TextAlign = HorizontalAlignment.Center;/*could be left, right or center*/ 
0
richTextBox1.SelectAll(); 
richTextBox1.SelectionAlignment = HorizontalAlignment.Center; 
richTextBox1.DeselectAll(); 
+6

尽管此代码可能回答此问题,但提供有关如何解决问题和/或为何解决问题的其他上下文会提高答案的长期价值。 – 2017-02-11 09:57:41