Новая строка в WPF-метке?
Как я могу добавить новую строку в текст метки в WPF, например, следующее?
<Label>Lorem
ipsum</Label>
4 ответа:
<Label><TextBlock>Lorem<LineBreak/>ipsum</TextBlock></Label>
вам нужно использовать TextBlock, потому что TextBlock принимает в качестве дочерних коллекцию встроенных объектов. Таким образом, вы даете элементу TextBlock три встроенных элемента: Run Text="Lorem", LineBreak и Run Text="ipsum".
вы не можете сделать следующее:
<Label>Lorem<LineBreak/>ipsum</Label>`
потому что метка принимает один дочерний элемент содержимого.
кроме того, не уверен, что именно ваш вариант использования, но обратите внимание, что я поместил TextBlock внутри элемента Label. Это повторяется? Не действительно, в зависимости от ваших потребностей. Вот хорошая статья о различиях между двумя элементами: разница между меткой и TextBlock
в WPF вы можете использовать значение
" "
или"
"
например:
<Label Content="Lorem ipsum" />
("10" - это номер ASCII для новой строки)
или
<Label Content="Lorem
ipsum" />
("A" - это номер ASCII для новой строки в шестнадцатеричном формате)
при выполнении этого в ViewModel или модели, я обнаружил, что с помощью среды.Новая линия имеет наиболее последовательный результат, включая локализацию. Он также должен работать непосредственно в представлении, но я этого не проверял.
пример:
по мнению
<Label Content="{Binding SomeStringObject.ParameterName}" />
в ViewModel:
SomeStringObject.ParameterName = "First line" + Environment.NewLine + "Second line";
Я понимаю, что новые строки работают в текстовом блоке. Однако если вы хотите новую строку в метке, как указано в вопросе, используйте это в своей строке. У меня есть пробелы между ними, потому что в противном случае он не позволит мне опубликовать последовательность в этом комментарии. & # х ; Используйте эти 5 символов вместе без пробелов, чтобы получить новую строку, которую вы ищете.