如何更改Silverlight中数据表单中字段之间的间距?
我试过编辑模板,但找不到所需的内容。 我想我所要做的就是 MinHeight 和 Margin 的 DataField 风格,但似乎不行。
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>
我发现了很多关于数据表单样式的文章,但其中许多似乎已经过时了。我在blend中的完整提取模板中看不到与间距对应的任何内容。
改变样式的边距会改变间距。
我猜你在一个资源中有上面的样式,并期望它隐式地应用到所有 DataField 实例。Silverlight 3不支持隐式样式(该工具包具有一些附加属性,这些属性可以提供隐式样式的某种相似性)。
您需要从数据表单中引用此样式:
<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}" />