从后面的代码绘制网格

本文关键字:绘制 网格 代码 | 更新日期: 2023-09-27 18:04:43

<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块网格编写了上述代码。我如何从代码后面做同样的事情,而不是写9行代码?

从后面的代码绘制网格

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);
    }
}