Qual è la differenza "concettuale" tra TextWrapping="Wrap"e TextWrapping="WrapWithOverflow"(ad esempio per un TextBox)? Nella pagina MSDN sulla classe TextBox non c'è nulla ... Grazie.
Qual è la differenza "concettuale" tra TextWrapping="Wrap"e TextWrapping="WrapWithOverflow"(ad esempio per un TextBox)? Nella pagina MSDN sulla classe TextBox non c'è nulla ... Grazie.
Risposte:
WrapWithOverflow La interruzione di linea si verifica se la linea trabocca oltre la larghezza del blocco disponibile. Tuttavia, una linea può traboccare oltre la larghezza del blocco se l'algoritmo di interruzione di linea non è in grado di determinare un'opportunità di interruzione di linea, come nel caso di una parola molto lunga vincolata in un contenitore a larghezza fissa senza scorrimento consentito.
NoWrap Non viene eseguito alcun avvolgimento di riga.
La fine della linea a capo si verifica se la linea trabocca oltre la larghezza del blocco disponibile, anche se l'algoritmo di interruzione di linea standard non è in grado di determinare alcuna opportunità di interruzione di linea, come nel caso di una parola molto lunga vincolata in un contenitore a larghezza fissa senza scorrimento consentito.
Spero che questo ti aiuti
WrapWithOverFlownon romperà le parole, ma lo Wrapfarà?
Qualche esempio:
Questa è la versione originale da scartare:

Questo è NoWrap.

Questo è Wrap. Le parole Removee Samplesono state racchiuse in vee le, rispettivamente, anche se non vi è alcuna opportunità di interruzione di riga.

Questo è WrapWithOverflow. I vee lenon sono visibili (superano la larghezza del blocco disponibile) perché non esiste alcuna opportunità di interruzione di riga. Il All, in entrambi i casi, è stato racchiuso perché il spacepersonaggio è un'opportunità di interruzione di riga.

Modificare:
Come suggerito nei commenti, ecco alcuni esempi di come Wraptratta gli spazi. Quando Widthè 100, Wrape WrapWithOverflowsono identici. Wrapconsidera lo spazio tra widere examplecome un'opportunità di interruzione di riga, quindi exampleviene inserito in una nuova riga per preservare l'intera parola continua.

Wrapignora completamente le interruzioni degli spazi bianchi, ma ciò non è vero.
Una cosa da aggiungere alle altre risposte, WrapWithOverflow ti consente di usare il taglio del testo (puntini di sospensione) sulle parole lunghe che vengono tagliate:
<TextBlock TextWrapping="WrapWithOverflow" Width="120" TextTrimming="CharacterEllipsis">
A really long word is antidisestablishmentarianism and we can use ellipsis trimming.
</TextBlock>
WrapWithOverflownon è supportato in Silverlight. SoloWrapeNoWrapsono supportati in Silverlight. msdn.microsoft.com/en-us/library/...