نمایش نتایج 1 تا 7 از 7

نام تاپیک: آرایه در آوردن لیبل ها

  1. #1

    آرایه در آوردن لیبل ها

    سلام
    من چند لیبل در form دارم به نامهای (مثلا)
    lbl1
    lbl2
    lbl3
    lbl4
    lbl5
    .
    .
    .
    در جای از برنامه باید عناصر یک آریه را بترتیب به لیبل ها نسبت بدم مثلا
    lbl1.Text=Ar[1]
    lbl2.Text=Ar[2]
    lbl3.Text=Ar[3]
    lbl4.Text=Ar[4]
    lbl5.Text=Ar[5]

    میخواستم بپرس راهی وجود نداره لیبلها رو هم بصورت آرایه تا بشه با یه حلقه راحتتر این برنامه رو نوشت/؟

  2. #2

    نقل قول: آرایه در آوردن لیبل ها

     List<Label> labels = new List<Label>();
    foreach (Control c in this.Controls)
    {
    if (c is Label")
    {
    labels.Add(c as Label);
    }
    }

    از اینجا به بعد لیبلاتو داخل ارایه داری هر کاری می خوای بکن.

    labels[0].Text = "Yechi";

  3. #3

    نقل قول: آرایه در آوردن لیبل ها

    ممنونم از پاسخت
    من خواستم همین رو بری تکست باکس ه انجام بدم که نمیشه
       List<TextBox> txtC= new List<TextBox>();
    foreach (Control c in this.Controls)
    {
    if (c is TextBox) { txtC.Add(c as TextBox);
    }

    نام text box های من
    txtC1
    txtC2
    txtC3
    .
    .

  4. #4

    نقل قول: آرایه در آوردن لیبل ها

    نقل قول نوشته شده توسط reza0916 مشاهده تاپیک
    ممنونم از پاسخت
    من خواستم همین رو بری تکست باکس ه انجام بدم که نمیشه
       List<TextBox> txtC= new List<TextBox>();
    foreach (Control c in this.Controls)
    {
    if (c is TextBox) { txtC.Add(c as TextBox);
    }

    نام text box های من
    txtC1
    txtC2
    txtC3
    .
    .
    مشکل چیه ککه نشد؟

  5. #5

    نقل قول: آرایه در آوردن لیبل ها

    دوست عزیز بهتره شما کنترا ها را به صورت استا روی فرم قرار ندی تا در زمان ران تایم پروژتو خوب Handle کنی
    منظورم اینه که شما اول از همه سعی کن اشیا را به صورت داینامیک تولید کن روی فرم بعد دیگه فکر نکنم مشکلی داشته باشی
    به مثال زیر دقت کن :


    private void Form1_Load(object sender, EventArgs e)
    {

    //making dynamic buttons
    Button[] btns = new Button[10];
    int btnXPositionOnForm = 10;
    int btnYPositionOnForm =10;
    for (int i = 0; i < btns.Length; i++)
    {
    btns[i] = new Button();
    btns[i].Text = "btn#: " + i.ToString();
    btns[i].Click += new EventHandler(btn_click);
    btns[i].Location = new Point(btnXPositionOnForm, btnYPositionOnForm);
    btnYPositionOnForm += btns[i].Height + 10;
    }

    this.Controls.AddRange(btns);

    }

    private void btn_click(object sender, EventArgs e)
    {
    // get to know which button is pressed.
    Button temp = (Button)sender;
    MessageBox.Show(temp.Text);
    }





    فکر کنم بتونی کد های این مثال را متناسب کار خودت تغییر بدی
    در ضمن اگه بخوای کار قبلی ات را انجام بدی می تونی از Generic به این صورت که حرفه ای تر هم است استفاده کنی


    foreach (var btn in this.Controls.OfType<TextBox>())
    {
    btn.Text = "something";
    }


    مزیتش اینه که کار اضافه انجام نمیدی ، یعنی با دستور IF دیگه شرط نمی کذاری
    موفق باشی

  6. #6

    نقل قول: آرایه در آوردن لیبل ها

    یه سوال :
    در کد زیر بوسیله یه buttun1 یه گروه تست باکس تولید میشه حالا چطور میتونم با یه buttun دیگه چیزی ازش دریافت یا وارد کنم
    اصلا buttun دومی تست باکس ها رو نمیشناسه . ...
    کد من :
     private void button1_Click(object sender, EventArgs e)
    {
    TextBox[] txtC = new TextBox[10];

    int txtCX = 80; int txtCY = 180;

    for (int i = 1; i < txtC.Length; i++)//////////////
    {
    txtC[i] = new TextBox();

    txtC[i].Location = new Point(txtCX, txtCY);



    txtCY += txtC[i].Height + 5;

    }
    this.Controls.AddRange(txtC);

    }

    private void button2_Click(object sender, EventArgs e)
    {
    txtC[2].text = "ok";


    }

    خط قرمز رنگ ارور میده

  7. #7
    محروم شده
    تاریخ عضویت
    بهمن 1391
    محل زندگی
    جنب حرم امام رضا(ع)
    سن
    23
    پست
    1,514

    نقل قول: آرایه در آوردن لیبل ها

    شما باید متغیری که در خط زیر هست رو به صورت سراسری تعریف کنی:
    TextBox[] txtC = new TextBox[10];

    یعنی این خط رو از داخل رویداد باتون بردار و بذارش زیر: public partial class Form1 : Form
    در اون صورت این متغیر در همه جا قابل استفاده است...

تاپیک های مشابه

  1. آوردن اطلاعات اکسس بر روی لیبل
    نوشته شده توسط tehran2009 در بخش برنامه نویسی در 6 VB
    پاسخ: 3
    آخرین پست: چهارشنبه 14 اسفند 1387, 19:56 عصر
  2. سوال: تبدیل آرایه ای از کاراکتر ها به خاصیت تکست یک لیبل
    نوشته شده توسط salibsatan در بخش C#‎‎
    پاسخ: 4
    آخرین پست: پنج شنبه 16 آبان 1387, 17:53 عصر
  3. بدست آوردن کاراکتر از روی کد آن در یک آرایه
    نوشته شده توسط HAIdle در بخش C#‎‎
    پاسخ: 2
    آخرین پست: چهارشنبه 31 مرداد 1386, 23:37 عصر
  4. بدست آوردن طول آرایه در javascript
    نوشته شده توسط Peyman_Ranjbar در بخش طراحی وب (Web Design)
    پاسخ: 2
    آخرین پست: جمعه 04 فروردین 1385, 05:58 صبح
  5. بدست آوردن تفاضل آرایه ها
    نوشته شده توسط Mehrafrooz در بخش VB.NET
    پاسخ: 3
    آخرین پست: شنبه 13 اسفند 1384, 02:45 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •