WPF文本Wrap vs WrapWithOverflow

TextWrapping="Wrap"TextWrapping="WrapWithOverflow" (例如TextBox)之间的“概念上”区别是什么? 在关于类TextBox MSDN页面没有什么…谢谢。

MSDN

WrapWithOverflow如果行溢出超出可用块宽度,则会发生断行。 但是,如果换行algorithm无法确定换行机会,则行可能会溢出块宽度,例如在固定宽度容器中限制非常长的单词而不允许滚动。
NoWrap不执行换行。
行如果行溢出超过可用的块宽度,即使标准换行algorithm不能确定任何换行机会,也会发生行,如固定宽度容器中的一个非常长的单词被限制,且不允许滚动。

希望这可以帮助

一些例子:

这是原始的,解开的版本:

没有包装


这是NoWrap

NoWrap的


这是Wrap 。 即使不存在换行符机会,“ Remove和“ Sample ”一词也分别包含在vele

包


这是WrapWithOverflowvele不可见(它们会溢出可用的块宽度),因为没有换行符的机会。 All ,在这两种情况下,已被包装,因为space字符是一个换行的机会。

WrapWithOverflow


编辑:

正如评论中所build议的,下面是一些如何处理空间的例子。 当Width100WrapWrapWithOverflow是相同的。 Wrapwider examplewider example之间的空间看作是一个换行的机会,所以example被放在一个新的线上来保存整个连续的单词。

在这里输入图像说明