WPF-Stack-Panel wird zentral ausgerichtet

7

Ich möchte Schaltflächen innerhalb eines Stack-Panels zentral ausrichten können. Die Anzahl der Schaltflächen ist dynamisch und wird generiert, wenn das Steuerelement geladen wird. Wenn beispielsweise 1 Schaltfläche generiert wird, sollte diese Schaltfläche in der Mitte des Steuerelements platziert werden. Wenn 5 Schaltflächen angezeigt werden, sollten alle 5 horizontal neben 2 nebeneinander, aber zentral zum Steuerelement ausgerichtet sein.

Ein alternativer Ansatz bestünde darin, die Größe des Steuerelements basierend auf seinem Inhalt dynamisch zu ändern, sodass es mit mehr Schaltflächen breiter wird und das Benutzersteuerelement horizontal auf der Seite ausrichtet, aber ich bin mir nicht sicher, wie ich beide Lösungen angehen soll.

Hat jemand Ideen?

    
user1474992 22.06.2012, 13:46
quelle

2 Antworten

16

Das sollte funktionieren. Legen Sie die horizontale Ausrichtung im Stapelbereich fest, und stellen Sie sicher, dass Sie beim dynamischen Hinzufügen der Schaltfläche jeweils einen Wert für die Randeigenschaft erhalten, um voneinander Abstand zu erhalten. horizontal zu einander, zentral für die Kontrolle.

%Vor%     
GrayFox374 22.06.2012 14:00
quelle
7

Sie können einfach Folgendes in XAML festlegen

StackPanel.HorizontalAlignment = HorizontalAlignment.Center;

oder

HorizontalAlignment="Center" (wie GrayFox374 erwähnt)

Hier ist ein MSDN-Beispiel, das verschiedene Ausrichtungsvorgänge erklärt und genau das hat, was Sie brauchen, denke ich - Gewusst wie: Horizontal oder vertikal Inhalte in einem StackPanel ausrichten

    
akjoshi 22.06.2012 14:06
quelle

Tags und Links