AnDr3yy
AnDr3yy

Reputation: 239

Increase the label name

I need a command code that increase the label name.

I need to display in 10 (example) labels some texts.

Example:

label1.Text = "1";
label2.Text = "2";
label3.Text = "3";
label4.Text = "4";
label5.Text = "5";
label6.Text = "6";

I need to increase the number from label name (label1, label2, etc.) in a foreach where I will increase the variable i (i will be use in a structure like this label.Name = "label" + i.ToString();).

I hope that you understand what I want to say.

I try this but don't work:

Label[] label = new Label[2];

int ii = 0;
foreach(...) // go through a list
{
                label[ii] = new Label();
                label[ii].Text = x.materie + tip + "\nsala " + x.sala;
                label[ii].Visible = true;
                label[ii].Location = new System.Drawing.Point(cX, cY);
                label[ii].SetBounds(cX, cY, 98, cH);
                label[ii].MinimumSize = new Size(98, cH);
                label[ii].MaximumSize = new Size(98, cH);

                ii++;
}

Upvotes: 1

Views: 1201

Answers (2)

chridam
chridam

Reputation: 103435

int count = 10;
for (int i = 1; i <= count; i++)
{
    // setup label and add them to the page hierarchy
    Label lbl = new Label();
    lbl.Name = "label" + i;
    lbl.Text = i.ToString();
    //assuming form1 is a form in your page with a runat="server" attribute.
    this.Controls.Add(lbl); 
}

Upvotes: 3

Furqan Safdar
Furqan Safdar

Reputation: 16708

Assuming you have an array of Label controls, label, you can do the following:

int i = 1;

for (int i = 1; i < label.Length; i++)
{
    lbl.ID = String.Format("label{0}", i.ToString());
}

Upvotes: 0

Related Questions