3

ループ内でいくつかのコントロールを動的に作成したい Windows アプリケーションを開発しています。私が試しているコードは

private Label newLabel = new Label();
private int txtBoxStartPosition = 100;
private int txtBoxStartPositionV = 25;

 for (int i = 0; i < 7; i++)
{

    newLabel.Location = new System.Drawing.Point(txtBoxStartPosition, txtBoxStartPositionV);
    newLabel.Size = new System.Drawing.Size(70, 40);
    newLabel.Text = i.ToString();

    panel1.Controls.Add(newLabel);
    txtBoxStartPositionV += 30;


}

このコードは、テキスト 7 のラベルを 1 つしか生成していませんが、それぞれのテキストを含む 8 つのラベルを作成したいのですが、どうすればよいですか?

4

3 に答える 3

3

これを試して:

private int txtBoxStartPosition = 100;
private int txtBoxStartPositionV = 25;

 for (int i = 0; i < 7; i++)
{
    newLabel = new Label();
    newLabel.Location = new System.Drawing.Point(txtBoxStartPosition, txtBoxStartPositionV);
    newLabel.Size = new System.Drawing.Size(70, 40);
    newLabel.Text = i.ToString();

    panel1.Controls.Add(newLabel);
    txtBoxStartPositionV += 30;


}
于 2013-06-04T09:38:23.457 に答える
1

private Label newLabel = new Label();ラインをforループに入れる必要があります。

private int txtBoxStartPosition = 100;
private int txtBoxStartPositionV = 25;

for (int i = 0; i < 7; i++)
{
    Label newLabel = new Label();
    newLabel.Location = new System.Drawing.Point(txtBoxStartPosition, txtBoxStartPositionV);
    newLabel.Size = new System.Drawing.Size(70, 40);
    newLabel.Text = i.ToString();

    panel1.Controls.Add(newLabel);
    txtBoxStartPositionV += 30;
}
于 2013-06-04T09:38:01.020 に答える