Bleib am Boden eines StackPanels

8

In meinem Fenster gibt es ein Gitter, das 100% des verfügbaren vertikalen Raums einnimmt. Innerhalb dieses Grids befindet sich ein StackPanel mit einem anderen StackPanel und einem Frame innerhalb. Ich möchte dieses Frame an der Unterseite des übergeordneten StackPanel haben.

%Vor%

Wenn zum Beispiel der Benutzer die Größe des Fensters ändert und das Raster an Höhe zunimmt, bleibt der Rahmen an der Unterseite.

Ich habe verschiedene Dinge ausprobiert, indem ich VerticalAlign="Stretch" oder ein DockPanel benutzt und dem Frame ein DockPanel.Dock="Bottom" zugewiesen habe, aber ohne Erfolg. Ich wäre dankbar für ein oder zwei Hinweise. Ich brauche das StackPanel nicht als StackPanel, es kann auch ein DockPanel sein.

    
peter 17.04.2015, 12:11
quelle

3 Antworten

15

A StackPanel ist nicht das richtige Panel für Ihre Anforderungen, da sie nicht die gleichen Layout- und Größenänderungsfunktionen wie Grid bieten. Ersetzen Sie sie einfach durch Grid , geben Sie den größten Teil des Speicherplatzes dem inneren StackPanel und dann bleibt Frame unten.

%Vor%

Sie können mehr über die verschiedenen WPF Panel s in der Panels Übersicht Seite auf MSDN.

    
Sheridan 17.04.2015, 12:17
quelle
9

Sieht eher wie ein Anwendungsfall für DockPanel

aus %Vor%     
Manish Basantani 17.04.2015 12:37
quelle
0

Laut MSDN-Dokumentation zu StackPanel

  

Ein StackPanel Ordnet untergeordnete Elemente in eine einzige Linie ein, die ausgerichtet werden kann   horizontal oder vertikal.

In diesem Fall ist StackPanel nicht das richtige Steuerelement. Wenn Sie möchten, dass Ihr Steuerelement an einer bestimmten Position fixiert wird, können Sie DockPanel und platziere dein Steuerelement darin.

%Vor%     
sohaiby 08.08.2017 06:21
quelle

Tags und Links