我需要你的帮助,用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();
}
}
}
结果:网格中只有一个单元格被涂黑。而不是我想要的所有网格。我怎样才能改善这个?
感谢您的回复! :)
答案 0 :(得分:1)
您应该在循环中设置Grid.Row
和Grid.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);**