2013-03-20 36 views
0
<UserControl x:Class="SilverlightApplication4.SilverlightControl1" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    mc:Ignorable="d" 
    d:DesignHeight="300" d:DesignWidth="400"> 

    <Grid x:Name="LayoutRoot" Background="White" Margin="0,0,80,-20"> 
     <Grid HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100" Background="Beige"/> 
     <Grid HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100" Background="Beige" Margin="110,0,0,0"/> 
     <Grid HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100" Background="Beige" Margin="220,0,0,0"/> 
     <Grid HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100" Background="Beige" Margin="0,110,0,0"/> 
     <Grid HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100" Background="Beige" Margin="110,110,0,0"/> 
     <Grid HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100" Background="Beige" Margin="220,110,0,0"/> 
     <Grid HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100" Background="Beige" Margin="0,220,0,0"/> 
     <Grid HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100" Background="Beige" Margin="110,220,0,0"/> 
     <Grid HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100" Background="Beige" Margin="220,220,0,0"/> 

    </Grid> 
</UserControl> 

我已经在我的xamp文件中编写了3 * 3网格的bock代码。 我如何从背后的代码做同样的事情,而不是写9行代码?从后面的代码中绘制网格

回答

1
private void AddGrids() 
{ 
    for (int i = 0; i < 10; i++) 
    { 
     Grid grid = new Grid 
     { 
      HorizontalAlignment = HorizontalAlignment.Left, 
      VerticalAlignment = VerticalAlignment.Top, 
      Height = 100, 
      Width = 100, 
      Background = new SolidColorBrush(Color.FromArgb(255, 245, 245, 220)), 
      Margin = new Thickness("margin calculated by your algorithm") 
     }; 
     LayoutRoot.Children.Add(grid); 
    } 
}