Мягкие дефисы в XAML?
У кого-нибудь есть идея, возможно ли определить "мягкие дефисы" или "мягкие разрывы строк", например, в тексте TextBlock? Фон: я хотел бы использовать TextWrapping = "Wrap" для TextBlock, но обычно это ничего не даст, если текст, содержащийся в TextBlock, не содержит пробелов.
Например
<TextBlock TextWrapping="Wrap" Text="OneVeryLongWordThatDoesNotContainAnyWhiteSpaceAtAll" />
не будет оборачиваться, если недостаточно места. Поэтому я подумал, что, может быть, есть способ сообщить TextWrapping, где текст может быть перенесен.
Я пытался использовать HTML ­
(мягкий дефис), но это явно не разрешено в XAML (не компилируется).
Ура, Алекс
1 ответ
Alex,
что вы подразумеваете под "не оборачивать, если недостаточно места"? Я попробовал ваш пример кода, и он действительно переносит (он будет разбиваться на каждый символ при необходимости) при добавлении Width="100"
или ограничение по марже и т. д.
Установив ширину 100 я получаю следующий результат:
OneVeryLongWor
dThatDoesNotCon
tainAnyWhiteSpa
ceAtAll
Когда вы ограничиваете высоту (как Height="20"
), это на самом деле не сломается, конечно, но вы можете добавить TextTrimming="WordEllipsis"
чтобы получить такой результат:
OneVeryLongW...
Но, ну, это не отвечает на ваш вопрос о мягких дефисах, они, очевидно, не работают.
С наилучшими пожеланиями =)