Comment puis-je modifier l'espacement entre les champs dans un DataForm?
-
22-09-2019 - |
Question
Comment puis-je modifier l'espacement entre les champs dans un DataForm dans Silverlight?
Je l'ai essayé de modifier le modèle mais ne peut pas trouver ce que je dois.
Je pensais que tout ce que je devais faire était de changer le MinHeight
et Margin
du style DataField
, mais cela ne semble pas le faire.
<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>
Je l'ai trouvé un certain nombre d'articles sur DataForm de style, mais beaucoup d'entre eux semblent être à jour. Je ne vois rien dans le modèle extrait complet dans le mélange qui correspond à l'espacement.
La solution
Et bien changer la marge sur le style ne change l'espacement.
Je suppose que vous allez le style ci-dessus dans une ressource et nous attendons à appliquer implicitement à toutes les instances de DataField
. Silverlight 3 ne prend pas en charge pour les styles implicites (la boîte à outils a des propriétés attachées qui peuvent fournir une semblence de styles implicites cependant).
Vous avez besoin de faire référence à ce style de la 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}" />