新创建的标签不会显示GUI

时间:2012-08-14 21:20:45

标签: c# user-interface

我有一些问题让我的标签出现在gui ...任何想法?

private void addNewExcerciseButton_Click(object sender, EventArgs e)
        {

            int y = 305;
            int x= 61;

            string tempExcercise = excerciseTextBox.Text;
            excerciseTextBox.Clear();


           Label[] excerciseLabels = new Label[numExercises];



           for (int i = 0; i < numExercises; ++i)
           {
                excerciseLabels[i] = new Label();
                excerciseLabels[i].Text = ToString("{0}. {1}", i + 1, tempExcercise);;
                excerciseLabels[i].Location = new System.Drawing.Point(x, y);
                x += 10;
                y += 10;


                ++numExercises;
           }
}

提前感谢。

numExercises是全球性的。

2 个答案:

答案 0 :(得分:3)

您必须将每个新Label添加到可见控件(例如您的表单)所包含的控件集合中。您正在创建和设置它们,但它们不是GUI的一部分,直到它们位于控制层次结构中。

在设置标签的位置后添加以下行:

this.Controls.Add(exerciseLabels[i]);

答案 1 :(得分:2)

您需要将标签添加到GUI:

this.Controls.Add(excersizeLabels[i]);

作为旁注,使用数组毫无意义。