Как центрировать текст метки в WPF?


111

Как центрировать текст метки в WPF?


Label HorizontalAlignment="Center" Content="What?" FontSize="25" FontWeight="Bold" Canvas.Top="5"

Ответы:


211

используйте свойство HorizontalContentAlignment .

Образец

<Label HorizontalContentAlignment="Center"/>

@Alan, можете ли вы обновить свой вопрос с помощью XAML, содержащего эту метку, плюс снимок экрана, показывающий, как это выглядит? Потому что это свойство должно работать ...
Дэн Дж.

5
@Alan В своем обновленном вопросе вы пытаетесь установить HorizontalAlignment. Попробуйте установить HorizontalContentAlignment, как указано в моем ответе выше. Это будет работать
biju

4
Как упоминал user1920925, это работает для ярлыков, только когда есть одна строка текста. Для управления выравниванием вы можете использовать TextBlock вместо метки и установить для атрибута TextAlignment все, что вам нужно.
Пол Стеглер,

WPF 3.5 не показывает это свойство, но когда вы просто вводите его, оно работает. Спасибо.
Strider

3
Если у вас есть несколько строк содержимого, это выровняет левые края каждой строки, а затем центрирует весь блок. Если вы хотите центрировать каждую строку, используйте вместо этого TextBlock и установите TextAlignment="Center".
Тор Клингберг

7

Класс Control имеет свойства HorizontalContentAlignment и VerticalContentAlignment. Эти свойства определяют, как содержимое элемента управления заполняет пространство внутри элемента управления.
Установите для HorizontalContentAlignment и VerticalContentAlignment значение «Центр».


3
@Alan, вы использовали HorizontalAlignment в своем коде. Используйте HorizontalContentAlignment, чтобы получить желаемое поведение.
Akshay J


0

Образец:

Label label = new Label();
label.HorizontalContentAlignment = HorizontalAlignment.Center;
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.