TextWrapping="Wrap"
和TextWrapping="WrapWithOverflow"
之间的“概念”区别是什么(例如TextBox)?在关于类TextBox的MSDN页面中没有什么......谢谢。
WrapWithOverflow如果行溢出超出可用块宽度,则会发生换行。但是,如果断行算法无法确定换行机会,则行可能溢出超出块宽度,如在非固定宽度容器中约束非常长的字而不允许滚动的情况。 NoWrap不执行换行。 换行如果线溢出超出可用块宽度,则会发生换行,即使标准换行算法无法确定任何换行机会,例如在固定宽度容器中约束非常长的单词但不允许滚动的情况下。
希望这可以帮助
一些例子:
这是原始的,未打开的版本:
这是NoWrap
。
这是Wrap
。 Remove
和Sample
这两个词分别被包裹在ve
和le
,尽管没有换线机会。
这是WrapWithOverflow
。 ve
和le
不可见(它们溢出可用的块宽度),因为没有换行机会。在这两种情况下,All
都被包裹了,因为space
角色是一个换行机会。
编辑:
正如评论中所建议的,这里有一些Wrap
如何处理空间的例子。当Width
是100
时,Wrap
和WrapWithOverflow
是相同的。 Wrap
将wider
和example
之间的空间视为一个换行机会,因此example
被放置在一条新线上以保留整个连续的词。