如何最大限度地减少datagrid中元素之间频繁使用Margin?

时间:2012-09-27 05:38:43

标签: silverlight xaml user-interface

在银光中:

我有一个数据网格,在第一行中每个单元格中都有一个元素。 我想为每个元素保留(5,0,0,0)的保证金。我已将列的宽度设置为auto,并分别为每个元素指定了边距。

有没有办法全局指定边距(在xaml中只有后面没有代码),这样每个元素都会分配给定的边距?(保持列宽自动)。

提前感谢您的回答!!

搜索这样的解决方案:

<Grid SetMarginForEachElement ="5,0,0,0"> 
     <element1/> 
     <element2/>
</Grid>

1 个答案:

答案 0 :(得分:0)

首先,您必须在视图中创建一个资源,如下所示:

    <UserControl.Resources>
    <Thickness x:Key="generalMargin"  Bottom="5" Left="5" Right="5" Top="5" />
</UserControl.Resources>

在此之后你只需要绑定它:

    <Grid x:Name="LayoutRoot" Background="White">
    <Image Height="150" HorizontalAlignment="Left"  Name="image1" Stretch="Fill" VerticalAlignment="Top" Width="200" Margin="{Binding Source={StaticResource generalMargin}}" />
</Grid>

就是这样。 希望它有所帮助