2010-01-20 11 views
7

Czy w WPF można ustawić wyrównanie pozycji dla GroupBox ? Ustawieniem domyślnym jest umieszczenie w lewym górnym rogu konturu GroupBox, ale chciałbym, aby był wyśrodkowany u góry. Wiem, że można ustawić właściwości tekstu przy użyciu:Wyrównanie pozycji nagłówka Groupbox WPF

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

ale szukam, aby ustawić pozycję nim w odniesieniu do GroupBox zarysie.

Odpowiedz

12

To proste! Wystarczy edytować Szablon groupbox:

W Blend, wykonaj następujące czynności:

  • Kliknij prawym przyciskiem groupbox> Edytuj szablon> Edycja Kopiuj> OK
  • Szukaj następnym rozdziale:

    <Border x:Name="Header" Padding="3,1,3,0" 
         Grid.Column="1" Grid.Row="0" Grid.RowSpan="2"> 
        ... 
    </Border> 
    
  • Zmień Grid.Column na 2

  • Ustaw również HorizontalAlignment="Right"

Właśnie wyrównałeś nagłówek w prawo !!! Ale spudłuj białą przerwę za nim. Do tego

  • teraz szukać następnej części:

    <Border BorderBrush="White" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="4" Grid.ColumnSpan="4" Grid.Row="1" Grid.RowSpan="3"> 
        <Border.OpacityMask> 
         ... 
        </Border.OpacityMask> 
        ... 
    </Border> 
    
  • Dodaj RenderTransformOrigin="0.5,0.5" granicy

  • Tuż powyżej, należy dodać następujący kod (będzie to przesunięcie "białe luki" za nagłówkiem w prawo:

    <Border.RenderTransform> 
        <ScaleTransform ScaleX="-1"/> 
    </Border.RenderTransform> 
    

Skończyłeś! Właśnie masz GroupBox z wyrównanym do prawej nagłówkiem !!!

Proszę mi powiedzieć, czy jest to wymagane.

+0

Dzięki! Miałem nadzieję, że to własność, którą przeoczyłem, ale ta próba zadziałała. – ambog36

+1

Nie ma problemu! Ale jeśli ta odpowiedź rozwiązuje twój problem, oznacz go jako zaakceptowany, aby inni, którzy borykają się z podobnym problemem, mogli na nim polegać. – mg007

2

Zmiana wartości nagłówka nagłówka grupy spowoduje brak zgodności z systemem operacyjnym.

Dlatego uważam, że nie można tego zmienić za pomocą domyślnych stylów. Niestandardowy szablon rozwiąże Twój problem.

Powiązane problemy