2012-10-30 11 views
9

Mam panel dokowania, z jedną etykietą pośrodku i kolejnym przyciskiem z prawej strony.Wyrównaj etykietę do środka panelu dokowania

Z powodu przycisku etykieta nie może być wyrównana do środka, gdy okna są zmaksymalizowane.

WPF:

<DockPanel Height="40" HorizontalAlignment="Stretch" Margin="-1,-2,0,0" Name="dockPanel1" VerticalAlignment="Stretch" Width="Auto" OpacityMask="{x:Null}"> 
      <Label FontSize="18" Content="Sales" FontWeight="Bold" FontFamily="Arial" Width="883" Height="42" HorizontalAlignment="Center" HorizontalContentAlignment="Center" Foreground="White" DockPanel.Dock="Left" VerticalAlignment="Center" VerticalContentAlignment="Center"></Label> 
      <Button FontSize="18" Height="47" Width="123" Name="btnStart" Foreground="White" BorderBrush="{x:Null}" FlowDirection="LeftToRight" HorizontalContentAlignment="Center" FontFamily="Arial Rounded MT" ClickMode="Press" DockPanel.Dock="Right" HorizontalAlignment="Right" VerticalAlignment="Center" Padding="0" Content="Start" BorderThickness="0" Focusable="False"> 
     </DockPanel> 
+3

DockPanel nie jest właściwym pojemnikiem do tego –

+1

czy próbowałeś zrobić siatkę z trzema kolumnami i umieścić etykietę pośrodku środkowej kolumny, a przycisk z prawej strony z prawej kolumny? – paul

+0

Podoba mi się paul rozwiązania. Oczywiście DockPanel nie ma odpowiedniej kontroli, ale to nie jest właściwa odpowiedź. Zastąpienie tej opcji może nie być możliwe. –

Odpowiedz

17

Użyj Grid zamiast DockPanel

Siatka pozwalają obiekty mają być umieszczone na szczycie siebie, dzięki czemu można umieścić etykietę w środku i przycisk na prawo

<Grid> 
    <Label HorizontalAlignment="Center" VerticalAlignment="Center" /> 
    <Button HorizontalAlignment="Right" /> 
</Grid> 

także jeśli jesteś nowym układów WPF jest, polecam przeczytanie WPF Layouts: A Quick Visual Start więc wiesz, co leży Outs są dostępne i można wybrać najlepsze dla twojej ostrzeżenia