我在一个WinForms程序中使用了RichTextBox控件。当某一行的长度超过3,510个字符时,它会自动换行。虽然我将WordWrap属性设置为false,但是长度小于该值的所有行仍然可以正常扩展而不会换行。以前我解决这个问题的方法是将RightMargin设置为一个很高的数字,比如100,000,这种方法仍然有效。但现在我使用的是Windows 7而不是XP,当我滚动文本框时,会出现滚动条,就好像文本框中有那么长的行一样,而实际上并没有。
要重现此问题,请创建一个带有RichTextBox和Button的winforms程序。在按钮的点击事件中添加以下内容:
要重现此问题,请创建一个带有RichTextBox和Button的winforms程序。在按钮的点击事件中添加以下内容:
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 3511; i++)
sb.Append('A');
richTextBox1.Text = sb.ToString();
在查看包装后,将文本框的RightMargin更改为100000,并注意到即使在运行程序之前(仅在7和可能的Vista上),出现了滚动条。该行不再换行,但我希望滚动条仅对框中的文本起作用,而不是一些预定长度。