我有一个数独游戏,我想自动生成一个数独游戏,以便玩家可以解决它。
当我在2d-Array中生成数字时,我已经做过了,我希望通过将这些值放在81个按钮的text-property上来使这些值可见。按钮都以类似的方式命名。 (sudoku_0_0,sudoku_0_1等 - 第一个数字是x坐标,第二个数字是y坐标)
我可以通过循环将值放在按钮上吗? 像:
for(var x=0;x<=8;x++){
for(var y=0;y<=8;y++){
sudoku_x_y.Text = "Hello"
}
}
显然这不起作用,但有没有办法做类似的事情?
答案 0 :(得分:4)
也可以将按钮放入数组中。
制作2D按钮阵列,然后执行以下操作:
Button[][] sudokuButtons = new Button[9][9];
for (int row = 0 ; row != 9 ; row++) {
for (int col = 0 ; col != 9 ; col++) {
var name = string.Format("sudoku_{0}_{1}", row, col);
sudokuButtons[row][col] = this.Controls.Find(name, true).FirstOrDefault() as Button;
}
}