C#文本框数组

时间:2013-02-26 20:25:44

标签: c# .net wpf

我在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
            }
        }

但它不起作用。 而且我不知道如何解决它

2 个答案:

答案 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()]