間の「概念」の違いは何だTextWrapping="Wrap"
とTextWrapping="WrapWithOverflow"
(例えばテキストボックス用)は?TextBoxクラスに関するMSDNページには何もありません...ありがとうございます。
間の「概念」の違いは何だTextWrapping="Wrap"
とTextWrapping="WrapWithOverflow"
(例えばテキストボックス用)は?TextBoxクラスに関するMSDNページには何もありません...ありがとうございます。
回答:
WrapWithOverflow 改行は、行が使用可能なブロック幅を超えてオーバーフローした場合に発生します。ただし、スクロールが許可されていない固定幅コンテナで非常に長い単語が制約されている場合など、改行アルゴリズムが改行の機会を判断できない場合、行がブロック幅を超えてオーバーフローする可能性があります。
NoWrap 行の折り返しは実行されません。 改行の
折り返しは、標準の改行アルゴリズムが改行の機会を判断できない場合でも、行が使用可能なブロック幅を超えてオーバーフローした場合に発生します。スクロールが許可されていない固定幅のコンテナーに非常に長い単語が制約されている場合などです。
お役に立てれば
WrapWithOverFlow
言葉を壊さないWrap
でしょうが、そうするでしょうか?
いくつかの例:
これは元のラップされていないバージョンです:
これですNoWrap
。
これですWrap
。改行の機会はありませんが、単語Remove
とSample
はそれぞれve
とle
でラップされています。
これですWrapWithOverflow
。ve
そしてle
何改行機会がないので(それが可能なブロック幅をオーバーフロー)表示されません。All
ので、両方のケースでは、ラップされたspace
文字は、改行の機会です。
編集:
コメントで示唆されているように、Wrap
がスペースを処理する方法の例をいくつか示します。ときWidth
で100
、Wrap
かつWrapWithOverflow
同一です。とのWrap
間のスペースを改行の機会として扱うため、連続した単語全体を保持するために新しい行に配置されます。wider
example
example
Wrap
空白の改行を完全に無視することを意味しますが、そうではありません。
WrapWithOverflow
、Silverlightではサポートされていないことに注意してください。のみWrap
とNoWrap
Silverlightでサポートされています。msdn.microsoft.com/en-us/library/...