如何在Silverlight中创建一个带边框的表?

时间:2010-05-08 15:02:42

标签: silverlight xaml grid silverlight-3.0

我目前正在使用Silverlight 3.我想创建一个2x2 HTML表的等价物。我希望每个细胞都有黑色边框。我如何在Silverlight中执行此操作?我是否可以在Grid元素上设置属性以使每个单元格都有边框?

1 个答案:

答案 0 :(得分:4)

不。网格只是众多面板类型中的一种,旨在以特定方式布置他们的孩子。网格广泛用于许多不同且通常嵌套的方式。它们重量轻,因此不会携带可能使用或不使用的行李,例如在这一系列属性中确定“细胞”的边界。

要在每个单元格上创建边框,只需使用Border控件:

<Grid>
  <Grid.Resources>
    <Style x:Key="borderStyle" TargetType="Border">
      <Setter Property="BorderBrush" Value="Black" />
      <Setter Property="BorderThickness" Value="1" />
      <Setter Property="Padding" Value="2" />
    </Style>
  </Grid.Resources>
  <Grid.RowDefinitions>
    <RowDefinition Height="*" />
    <RowDefinition Height="*" />
  </Grid.RowDefinitions>
  <Grid.ColumnDefinitions>
    <ColumnDefinition Width="*" />
    <ColumnDefinition Width="*" />
  </Grid.ColumnDefinitions>
  <Border Style="{StaticResource borderStyle}" Grid.Row="0" Grid.Column="0">
    <!-- Cell 0.0 content here -->
  </Border>
  <Border Style="{StaticResource borderStyle}" Grid.Row="0" Grid.Column="1">
    <!-- Cell 0.1 content here -->
  </Border>
  <Border Style="{StaticResource borderStyle}" Grid.Row="1" Grid.Column="0">
    <!-- Cell 1.0 content here -->
  </Border>
  <Border Style="{StaticResource borderStyle}" Grid.Row="1" Grid.Column="1">
    <!-- Cell 1.1 content here -->
  </Border>
</Grid>