PDA

View Full Version : ایجاد نشدن لیبل به صورت دینامیک



bitcob589
چهارشنبه 15 آبان 1392, 15:40 عصر
با سلام
یک دستور سلکت در لود فرم نوشته شده است تا مقدار نتیجه هر رکود در یک لیبل نمایش داده شود ضمنا در دارم لیبل به صورت دینامیک ایجاد شود و سپس نتیجه برگشتی به ازای هر رکود در یک لیبل جدا گانه نمایش داده شود اما فقط یک لیبل ایجاد می شود و در آن فقط اولین رکود در لیبل نمایش داده می شود و لیبل دیگری ایجاد نمی شود ضمنا نتیجه خروجی در به ازای هر رکود در messagebox جداگا نه نمایش داده می شود
کد به صورت زیر است

private void frmnomrh_Load(object sender, EventArgs e)
{
classazmoonDataContext yt = new classazmoonDataContext();
try
{
for (int j = 0; j < frmazmoon.gvab.Items.Count; j++)
{
var dp = (from fryt in yt.tblqustions where fryt.questionID == Convert.ToInt32(frmazmoon.gvab.Items[j]) select fryt);
int cpo = dp.Count();
if (cpo >= 1)
{
Label tt = new Label();

Random ra = new Random();
tt.Name = ra.Next(0, 9999).ToString();

tt.Size = new Size(200, 200); this.gropbox.Controls.Add(tt);
tt.Text = dp.First().questiontext;
}

}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
علت ایجاد نشدن لیبل به صورت دینامیک چیست

مهرداد صفا
چهارشنبه 15 آبان 1392, 16:18 عصر
با سلام.
1- label را به فرم اضافه کنید:


this.Controls.Add(tt);//...

2- مکان labelها را طوری تنظیم کنید که روی هم قرار نگیرند:


tt.Top=j*tt.Height+20;