C#/ WPF:禁用RichTextBox的文本换行
有谁知道如何禁用RichTextBox
的文本包装? 例如,如果我有一个不适合窗口的大字符串, RichTextBox
放置一个无法显示新行的字符串部分。 我想禁用它(并且仅通过使用Scrollbar
使其可见)。
非常感谢。
干杯
WPF中的RichTextBox
只是FlowDocument
的编辑器。
根据MSDN :
文本始终包含在RichTextBox中 。 如果您不希望文本换行,则将FlowDocument上的PageWidth设置为大于RichTextBox的宽度。 但是,一旦达到页面宽度,文本仍然会换行。
因此,虽然您无法明确禁用RichTextBox
自动换行,但您可以执行以下操作:
richTextBox1.HorizontalScrollBarVisibility = ScrollBarVisibility.Visible; richTextBox1.Document.PageWidth = 1000;
在您的行超过PageWidth
之前,它将具有基本相同的所需效果。
注意 (截至2015年7月):VS2015 RC允许wordwrap = false
正如OP似乎所希望的那样精确地工作。 我相信早期版本的Visual Studio也是如此。
如果您不想显示水平滚动条,请在ScrollViewer上强制使用MinWidth:
我还需要显示一个大字符串并尝试使用RichTextBox,但我不喜欢将Document的PageWidth设置为固定大小的解决方案。 滚动条将始终可见,滚动区域将变大。
如果TextBlock足够,您可以使用它,并将其放在ScrollViewer中。 它非常适合我,因为我不需要RichTextBox的所有额外function。
Very long text Very long text Very long text