Ich versuche, Padding eines StackPanel zu setzen, aber es gibt keine solche Eigenschaft. Ich habe versucht, StackPanel.Border, aber es gibt keine solche Eigenschaft entweder.
Irgendwelche Ideen?
Ich versuche, Padding eines StackPanel zu setzen, aber es gibt keine solche Eigenschaft. Ich habe versucht, StackPanel.Border, aber es gibt keine solche Eigenschaft entweder.
Irgendwelche Ideen?
Sie könnten einen Rahmen um das StackPanel legen und eine Auffüllung dafür festlegen. Ich am Ende tun dies eine Menge, da es viele UIElements, die nicht eine Padding-Eigenschaft haben.
<Border Padding="10">
<StackPanel>
<!--...-->
</StackPanel>
</Border>
(Hinweis: Alle FrameworkElemente haben eine Eigenschaft Margin, die den Abstand des Elements angibt, aber die Randbreite nicht in die ActualWidth einbezieht).
Wenn Sie die Elemente in einem StackPanel mit Abstand anordnen möchten, müssen Sie, wie von Rob beschrieben, für jedes untergeordnete Element einen Rand hinzufügen.
Wenn Sie meinen, dass Sie untergeordnete Elemente des StackPanel (das keine Padding-Eigenschaft hat) auf Abstand bringen wollen, siehe: Wie kann ich den Abstand zwischen den untergeordneten Elementen eines StackPanels vergrößern?
Dies ist eine Variante von padding für Elemente von StackPanel
<StackPanel Orientation="Horizontal" Grid.Row="2">
<StackPanel.Resources>
<Style x:Key="StackPanelPadding" TargetType="Control">
<Setter Property="Margin" Value="5,0,0,0"/>
<Setter Property="Height" Value="40"/>
</Style>
<Style BasedOn="{StaticResource StackPanelPadding}" TargetType="Button"/>
</StackPanel.Resources>
<Button/>
<Button/>
</StackPanel>
Das ist in Ordnung, aber es würde jeden Rand, den Sie für Ihre Schaltflächen festlegen wollen, außer Kraft setzen (oder auch nicht). Das mag in Ordnung sein, aber Sie verlieren hier an Flexibilität. Wenn Sie außerdem möchten, dass ein Stil auf alle Steuerelemente innerhalb eines Ressourcenbereichs angewendet wird, dann verwenden Sie einfach keine x:Key
. Es ist also unnötig, hier zwei Stile einzustellen. Entfernen Sie den zweiten (mit BasedOn
) und beseitigen Sie die x:Key
Attribut für die erste. Wenn Sie wollen, dass es nur für Schaltflächen gelten, dann verwenden Sie das als Zieltyp, sonst können Sie es so lassen, wie es ist.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.