Wpf如何使用标签填充网格?

时间:2017-02-21 13:32:51

标签: wpf grid

我需要你的帮助,用WPF中的标签填充我的网格。

想象一个网格3x3。

我的代码是这样的: MainWindow.xaml.cs

private void CreationDeLaCarte()
{
    Label CaseForet = new Label();
    CaseForet.Background = Brushes.Black;
    Grille.Children.Add(CaseForet);
}

private void CreerLesCases()
{
    for (int i = 0; i < 8; i++)
    {
        for (int j = 0; j < 10; j++)
        {
            CreationDeLaCarte();
        }
    }
}   

结果:网格中只有一个单元格被涂黑。而不是我想要的所有网格。我怎样才能改善这个?

感谢您的回复! :)

2 个答案:

答案 0 :(得分:1)

您应该在循环中设置Grid.RowGrid.Column属性:

 private void CreationDeLaCarte(int i, int j)
{
    Label CaseForet = new Label();
    CaseForet.Background = Brushes.Black;           
    Grille.Children.Add(CaseForet);
    Grid.SetRow(CaseForet, i);
    Grid.SetColumn(CaseForet, j);
}

你的循环应该是这样的:

    for (int i = 0; i < 8; i++)
    {
        for(int j = 0; j <10; j++)
        {
            CreationDeLaCarte(i,j);
        }
    }

确保最大列数和行数与网格一致。

答案 1 :(得分:0)

我成功了。

我必须输入一些参数:

private void CreationDeLaCarte(**int i, int j**)
    {Label CaseForet = new Label();
    CaseForet.Background = Brushes.Black;           
    Grille.Children.Add(CaseForet);
    **Grid.SetColumn(CaseForet, i);
    Grid.SetRow(CaseForet, j);**