1

Silverlight で DataForm のフィールド間の間隔を変更するにはどうすればよいですか?

テンプレートを編集しようとしましたが、必要なものが見つかりません。MinHeightスタイルのandMarginを変更するだけでよいと思っていました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 で完全に抽出されたテンプレートには、間隔に対応するものは何も表示されません。

4

1 に答える 1

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}" />
于 2010-03-27T13:30:07.933 に答える