Quelle est la différence "conceptuelle" entre TextWrapping="Wrap"
et TextWrapping="WrapWithOverflow"
(par exemple pour une zone de texte)? Dans la page MSDN sur la classe TextBox, il n'y a rien ... Merci.
WrapWithOverflow Une coupure de ligne se produit si la ligne dépasse de la largeur de bloc disponible. Toutefois, une ligne peut dépasser de la largeur du bloc si l'algorithme de saut de ligne ne peut pas déterminer une opportunité de saut de ligne, comme dans le cas d'un très long mot contraint dans un conteneur de largeur fixe sans défilement autorisé.
NoWrap Aucun retour à la ligne n'est effectué.
Wrap Une coupure de ligne se produit si la ligne dépasse de la largeur de bloc disponible, même si l'algorithme de coupure de ligne standard ne peut pas déterminer de saut de ligne. comme dans le cas d’un très long mot contraint dans un conteneur de largeur fixe sans défilement autorisé.
J'espère que cela t'aides
Quelques exemples:
Ceci est la version originale non emballée:
C'est NoWrap
.
C'est Wrap
. Les mots Remove
et Sample
ont été encapsulés à la ve
et le
, respectivement, même s’il n’existe aucune possibilité de changement de ligne.
C'est WrapWithOverflow
. Les ve
et le
ne sont pas visibles (ils dépassent la largeur de bloc disponible) car il n'y a pas d'opportunité de changement de ligne. Le All
, dans les deux cas, a été encapsulé car le caractère space
est une opportunité de changement de ligne.
Edit:
Comme suggéré dans les commentaires, voici quelques exemples de la manière dont Wrap
traite les espaces. Quand Width
est 100
, Wrap
et WrapWithOverflow
sont identiques. Wrap
traite l'espace entre wider
et example
comme une opportunité de saut de ligne, donc example
est placé sur une nouvelle ligne afin de préserver l'intégralité du mot Word continu. .
Une chose à ajouter aux autres réponses, WrapWithOverflow vous permet d’utiliser le rognage de texte (Ellipsis) pour les mots longs coupés:
<TextBlock TextWrapping="WrapWithOverflow" Width="120" TextTrimming="CharacterEllipsis">
A really long Word is antidisestablishmentarianism and we can use Ellipsis trimming.
</TextBlock>