Wie zu Strecken listbox Höhe die Verwendung von XAML in wpf?
Meinem Fenster ist ein Gitter, die 2. Zeile erstreckt sich auf das gesamte Fenster füllt.
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
Den Inhalt der 2. Zeile ist ein StackPanel. Ich ahmte die Lösung einer ähnlichen Frage auf SO und es funktioniert nicht für mich arbeiten: Höhe der listbox nicht zu Strecken, um füllen Sie die 2. Reihe. Was ist falsch an meinem code? Danke.
<StackPanel x:Name="lbStackPanel" Grid.Row="1" >
<ListBox Name="listBox1" Height="{Binding ElementName=lbStackPanel, Path=ActualHeight}">
...
</ListBox>
</StackPanel>
InformationsquelleAutor user763554 | 2012-01-31
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Warum brauchen Sie eine
StackPanel
es?Nur nehmen Sie es heraus, und die Reihe sollte der Größe richtig.
StackPanel
dient keinem Zweck, außer zu machen die Zeile, die eigenen layout nutzlos, wo jeder jeden schlagen, dass? Sie vermutlich nahm es der falsche Weg, und das war ein workaround zu lösen ein anderes problem.Ignorieren Sie das StackPanel-Element und nur eine ListBox, nimmt die zweite Zeile (Grid.Zeile="1"). Die Werte HorizontalAlignment-und VerticalAlignment-für die ListBox zu "Strecken". Die Höhe der ListBox wird dann die gesamte zweite Zeile. Dies ist viel einfacher, dann die Bindung an das StackPanel-Steuerelement die Höhe.