سلام، اول باید یه اسم در نظر بگیری براشون!
کدت رو اینجوری کردم:
for (int i = 0; i < 10; i++){
Label Lab = new Label();
Lab.Name = "labelX" + i;
Lab.ID += i;
Lab.Text = i;
div1.Controls.Add(Lab);
}
الان که دیدم، فکر کنم این کدت برای Asp.NET هست، چون ID داره!
// label3
int indexedLabel = 2;
// -1 yani hichi entekhab nashode
int selectedIndex = -1;
// حلفه
for (int i = 0; i < div1.Controls.Count;i++)
{
// اگه آیتم تایپمون برابر با لیبل بود
if (div1.Controls[i].GetType() == typeof(Label))
{
// کّست می کنیم به لیبل
var lbl = div1.Controls[i] as Label;
//چون نام تعریف کردیم پس میگیم اگه ناممون شروعش با این بود:
if (lbl.Name.ToLower().StartsWith("labelx"))
{
// قسمت لیبل ایکس رو حذف می کنیم
var number = lbl.Name.ToLower().Replace("labelx", "");
try
{
// تبدیلش می کنیم به اینتجر
int parsed = int.Parse(number);
// اگه برابر بود
if (indexedLabel == parsed)
{
selectedIndex = i;
break;
}
}
catch { }
}
}
}
if (selectedIndex != -1)
{
// ایندکس انتخاب شده رو میذاریم داخل کنترل ها و کلش رو کّست می کنیم به لیبل
// بعد تکست رو عوض می کنیم
((Label)div1.Controls[selectedIndex]).Text = "ABC";
}
موفق باشید.