Comment obtenir le seul élément enfant DockPanel à ancrer sur le dessus
Question
Ci-dessous, je déclare " DockPanel.Top ". sur le menu, mais il est amarré au milieu . (?)
Si je prends l’attribut Height de Menu, il s’ancre sur le dessus mais a une hauteur d’environ 200 pixels. (?)
Je pensais que c'était la raison d'être de LastChildFill.
Comment puis-je obtenir cet élément enfant de DockPanel ancré au sommet sans autre élément dans le dockpanel?
<Window x:Class="TestContainer1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="480" Width="600" Loaded="Window_Loaded">
<DockPanel HorizontalAlignment="Stretch"
Margin="0,0,0,0"
Width="Auto"
LastChildFill="True">
<Menu x:Name="panelMenuTop"
Width="Auto"
Height="25"
DockPanel.Dock="Top">
<MenuItem Header="File">
<MenuItem Header="Close"
Click="CloseApplication_Click"/>
</MenuItem>
</Menu>
</DockPanel>
</Window>
La solution
Votre menu remplit toute la zone et apparaît centré. Vous pouvez simplement donner au menu un VerticalAlignment = " Top " ou donnez au DockPanel un peu plus d’enfants comme le disait Henk.
Autres conseils
Change LastChildFill = " True " to LastChildFill = " False "
Mais la meilleure réponse est: donnez au DockPanel un peu plus d’enfants. Comme peut-être un autre DockPanel.