我在WPF Sudoku中写作,我需要一个TextBoxes数组。 我有81个文本框,它们的名称以txt11,txt21,txt31开头,这意味着第1行和第1列中的第一个txt,第1行和第2列中的第二个txt等等。
我的代码是:
private TextBox[,] texts = new TextBox[9, 9];
void Initialization_text()
{
texts[0, 0] = txt11;
texts[0, 1] = txt21;
texts[0, 2] = txt31;
texts[0, 3] = txt41;
texts[0, 4] = txt51;
texts[0, 5] = txt61;
texts[0, 6] = txt71;
texts[0, 7] = txt81;
texts[0, 8] = txt91;
..................
}
但我希望这样:
void Initialization_text()
{
for (int i = 0; i < 9; i++)
{
for (int j = 0; j < 9; j++)
{
texts[i, j] = (TextBox)Control["txt" + j+i];//j will be the column and i will be the line
}
}
但它不起作用。 而且我不知道如何解决它
答案 0 :(得分:1)
写作时
private TextBox[,] texts = new TextBox[9, 9];
初始化“指针”数组,其中每个指针都初始化为null。 您还必须初始化该类的每个实例!
在For循环中,您应该执行以下操作:
texts[i,j] = new TextBox();
texts[i,j].text = "txt" + i.ToString() + j.ToString();
答案 1 :(得分:-1)
Control["txt" + j.ToString() + i.ToString()]