Выравнивание положения заголовка Группового блока WPF

Действительно ли возможно установить выравнивание положения для a GroupBox Header в WPF? Значение по умолчанию должно поместить в верхнем левом углу GroupBox схема, но я хотел бы, чтобы это центрировалось наверху. Я знаю, что можно установить свойства текстового использования:

<GroupBox Grid.Row="1" HorizontalAlignment="Center">
   <GroupBox.Header> 
      <TextBlock Text="Cash Match" Foreground="Black" FontWeight="Bold"/>
   </GroupBox.Header>
</GroupBox>

Но я надеюсь устанавливать положение его относительно GroupBox схема.

8
задан Cœur 3 March 2019 в 08:33
поделиться

2 ответа

Все просто! Просто отредактируйте шаблон GroupBox:

In Blend, сделайте следующее:

  • Щелкните правой кнопкой мыши GroupBox > Редактировать шаблон > Редактировать копию > OK
  • Поиск в следующем разделе:

    <Граница x:Name="Header" Padding="3,1,3,0". 
     Сетка.Колонка="1" Сетка.Строка="0" Сетка.Строка.Спектр="2" >
     ...
    
    
  • Измените Grid.Column на 2

  • Также установите HorizontalAlignment="Правый"

Вы только что выровняли заголовок вправо!!!! Но за ним - белый зазор. Для этого

  • Теперь ищите следующий раздел:

    
     
     ...
     
     ...
    
    
  • Добавьте RenderTransformOrigin="0.5,0.5" к границе

  • Чуть выше, добавьте следующий код (это сдвинет "белый промежуток" за заголовком вправо:

    .
     
    
    

С тобой покончено! Ты только что получил GroupBox с правильным выровненным заголовком!!!

Пожалуйста, скажите мне, если это то, что вам нужно.

13
ответ дан 5 December 2019 в 11:24
поделиться

Изменение вычета заголовка в групповой заголовке приведет к тому, что включает в себя элементы управления несом.

Следовательно, я думаю, что вы не сможете изменить это, используя стили по умолчанию. Пользовательский шаблон решит вашу проблему.

2
ответ дан 5 December 2019 в 11:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: