使用保证金或填充,适用于容器内的范围:
<StackPanel>
<StackPanel.Resources>
<Style TargetType="{x:Type TextBox}">
<Setter Property="Margin" Value="0,10,0,0"/>
</Style>
</StackPanel.Resources>
<TextBox Text="Apple"/>
<TextBox Text="Banana"/>
<TextBox Text="Cherry"/>
</StackPanel>
编辑:如果你想重新使用两个容器之间的余量,可以边距值转换为外部范围内的资源,fe
<Window.Resources>
<Thickness x:Key="tbMargin">0,10,0,0</Thickness>
</Window.Resources>
,然后参考该值在内部范围
<StackPanel.Resources>
<Style TargetType="{x:Type TextBox}">
<Setter Property="Margin" Value="{StaticResource tbMargin}"/>
</Style>
</StackPanel.Resources>
的范围的风格是*真棒*的方式来做到这一点 - 谢谢你的提示! – 2009-05-31 18:41:34
如果我想将其用于整个项目,该怎么办? – 2012-11-28 13:09:50
有人可以解释为什么这只适用于你明确定义类型(例如TextBox)?如果我使用FrameworkElement尝试此操作,以便所有的孩子都有空间,那么它就没有任何作用。 – Schneider 2014-01-28 18:48:20