如何更改Silverlight中DataForm中字段之间的间距?
我尝试过编辑模板但找不到我需要的东西。
我认为我需要做的就是更改MinHeight
样式的Margin
和DataField
,但这似乎没有。
<Style TargetType="dataFormToolkit:DataField">
<Setter Property="IsTabStop" Value="False"/>
<Setter Property="Margin" Value="2"/>
<Setter Property="MinHeight" Value="5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="dataFormToolkit:DataField">
<ContentControl x:Name="ContentControl" Foreground="{TemplateBinding Foreground}" HorizontalContentAlignment="Stretch" IsTabStop="False" VerticalAlignment="Center"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
我发现了一些关于样式化DataForm的文章,但其中许多似乎已经过时了。我没有在Blend中与间距对应的完整提取模板中看到任何内容。
答案 0 :(得分:2)
在样式上更改边距确实会改变间距。
我猜你在资源中拥有上述样式,并期望它隐式应用于所有DataField
个实例。 Silverlight 3不支持隐式样式(该工具包具有一些附加属性,但可以提供隐式样式的一些内容)。
您需要从DataForm引用此样式: -
<Grid.Resources>
<Style x:Key="DataFieldStyle" TargetType="dataFormToolkit:DataField">
<Setter Property="Margin" Value="2"/>
<Setter Property="MinHeight" Value="5"/>
</Style>
</Grid.Resources>
<DataForm DataFieldStyle="{StaticResource DataFieldStyle}" />