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

نام تاپیک: public کردن modifier کنترل هایی که با کد نوشتیم

  1. #1

    public کردن modifier کنترل هایی که با کد نوشتیم

    سلام
    من مثلا چندتا Checkbox با کد نوشتم که در فرم لود ایجاد میشن. تو ایجاد شدنشون مشکلی نیست
    اما من میخوام هرکدوم که ایجاد میشه modifier هم public بشه
    اما نمیشه. چیکار کنم؟
    کد من اینه اما از خط سوم ایراد میگره. در واقع تو اون پنجره ای که باز میشه و تمام پراپرتی ها و غیره توش نوشته شده Modifiers نداره
    cb = new CheckBox();
    cb.Name = "cb" + i.ToString();
    cb.Modifiers=public
    cb.Text = dt.Rows[i][1].ToString();
    cb.Location = new Point(5, 10 + i * 25);
    this.Controls.Add(cb);

    خیلی لازمش دارم لطفا کمک کنید

  2. #2
    مدیر بخش آواتار mmd2009
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    پست
    2,393

    نقل قول: public کردن modifier کنترل هایی که با کد نوشتیم

    با سلام

    Modifires یک Property در Design-Time هست یا به اصطلاح این پروپرتی فقط توسط طراح تعیین میشه و کاربر نقشی در تغییر اون نداره

    در چنین مواقعی بهتره شما بگید میخوایید چیکار بکنید تا دوستان روش های مناسبی بهتون بگن

    موفق باشید

    کسی که به خود اطمینان دارد به تعریف دیگران احتیاج ندارد. «گوستاو لوبون»


  3. #3

    نقل قول: public کردن modifier کنترل هایی که با کد نوشتیم

    من میخوام تو یک فرم دیگه تکست این چک باکس رو بریزم تو یک متغیر string
    تا اونجایی که میدونم برای این که از خصوصیات یک کنترل مثل Text و غیره تو یک فرم دیگه استفاده کنیم باید modifiers اون کنترل رو public کنیم
    حالا میخوام ببینم چجوری میشه این کارو کرد؟؟؟؟

  4. #4
    کاربر دائمی
    تاریخ عضویت
    دی 1383
    محل زندگی
    اصفهان
    پست
    1,436

    نقل قول: public کردن modifier کنترل هایی که با کد نوشتیم

    شما در UserControl خودتون یک property جدید تعریف کنید و مقدار متن CheckBox رو برگردونید.در فرم، ازین Property برای دستیابی به متن CheckBox (به صورت غیر مستقیم) استفاده کنید.

    class MyUserControl : UserControl
    {
    // ...
    public string SomeText
    {
    get { return checkBox1.Text; }
    }
    // ....
    }

  5. #5

    نقل قول: public کردن modifier کنترل هایی که با کد نوشتیم

    نقل قول نوشته شده توسط plus مشاهده تاپیک
    شما در UserControl خودتون یک property جدید تعریف کنید و مقدار متن CheckBox رو برگردونید.در فرم، ازین Property برای دستیابی به متن CheckBox (به صورت غیر مستقیم) استفاده کنید.

    class MyUserControl : UserControl
    {
    // ...
    public string SomeText
    {
    get { return checkBox1.Text; }
    }
    // ....
    }
    ولی این نمیشه!!
    چون من چک باکس هارو با کد ایجاد کردم و تعداد چک باکس ها هم به تعداد ردیف های DataTable هستش. پس باید یه حلقه بزارم که چک کنه هر کدوم تیک خورده بود تکستشو بریزه تو یک متغیر
    من تنها مشکلم اینه که باید تو یک فرم دیگه این کدهارو بنویسم برای همین بهشون دسترسی ندارم. اگه تو همون فرم بود میتونستم بهشون دسترسی پیدا کنم
    لطفا کمک کنید
    آخرین ویرایش به وسیله erfan_urchin : دوشنبه 26 فروردین 1392 در 23:31 عصر

  6. #6
    کاربر دائمی
    تاریخ عضویت
    دی 1383
    محل زندگی
    اصفهان
    پست
    1,436

    نقل قول: public کردن modifier کنترل هایی که با کد نوشتیم

    اگه قراره فقط یک text برگرده، شما حلقه رو درون get مربوط به اون property بگذارید، یعنی در خود UserControl که به CheckBox ها دسترسی دارید.

    class MyUserControl : UserControl
    {
    // ...
    public string SomeText
    {
    get
    {
    for ....
    return result;
    }
    }
    // ....
    }

    اگه قراره بیش از یک مقدار برگرده، باز میتونید به همین روش عمل کنید و آرایه ای از رشته ها رو برگردونید:


    class MyUserControl : UserControl
    {
    // ...
    public string[] SomeText
    {
    get
    {
    List<string> MyList = new List<string>();
    for ....
    return MyList.ToArray();
    }
    }
    // ....
    }

    اگه هم میخواین کلا حلقه و عملیات رو در فرم انجام بدین، بجای ایجاد دسترسی مسقیم به CheckBox ها، میتونید متدها و property های مناسب رو در UserControl بگذارید تا از Form به وضعیت CheckBox ها دسترسی داشته باشید، مثلا:

    class MyUserControl : UserControl
    {
    // ...
    public ItemCount
    {
    get
    {
    return [Number of checkboxes];
    }
    }
    public bool IsItemChecked(int Index)
    {
    return [true if specified checkbox is checked, false otherwise];
    }
    public bool GetItemText(int Index)
    {
    return [text of the specified checkbox];
    }
    // ....
    }

    اگه هم میخواین راحت ترین کار و بدترین کار رو انتخاب کنید، متغیر هایی که توشون CheckBox رو new میکنید رو به صورت public تعریف کنید، مثلا لیستی از CheckBox ها:

    class MyUserControl : UserControl
    {
    public List<CheckBox> MyCheckBoxes = new List<CheckBox>();
    private void UserControl_Load(object sender, EventArgs e)
    {
    CheckBox cb = new CheckBox();
    MyCheckBoxes .Add(cb);
    }
    }

    اینطوری توی فرم به مشخصه MyCheckBoxes که لیستی از CheckBox های شما در userControl هست دسترسی دارید.

  7. #7

    نقل قول: public کردن modifier کنترل هایی که با کد نوشتیم

    نقل قول نوشته شده توسط plus مشاهده تاپیک
    اگه قراره فقط یک text برگرده، شما حلقه رو درون get مربوط به اون property بگذارید، یعنی در خود UserControl که به CheckBox ها دسترسی دارید.

    class MyUserControl : UserControl
    {
    // ...
    public string SomeText
    {
    get
    {
    for ....

    }
    }
    // ....
    }
    بله دقیقا منم همین کارو کردم
    اما وقتی میخوام تو حلقه بنویسم i<dt.Rows.Count اصلا dt رو نمیشناسه (dt همون DataTable هستش)

  8. #8
    کاربر دائمی
    تاریخ عضویت
    دی 1383
    محل زندگی
    اصفهان
    پست
    1,436

    نقل قول: public کردن modifier کنترل هایی که با کد نوشتیم

    نقل قول نوشته شده توسط erfan_urchin مشاهده تاپیک
    بله دقیقا منم همین کارو کردم
    اما وقتی میخوام تو حلقه بنویسم i<dt.Rows.Count اصلا dt رو نمیشناسه (dt همون DataTable هستش)
    خوب بستگی داره شما dt رو کجا تعریف کردین.

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

  1. اضافه کردن یک کنترل به Stringgrid به صورت دینام&
    نوشته شده توسط abdolkamal در بخش برنامه نویسی در Delphi
    پاسخ: 2
    آخرین پست: یک شنبه 14 فروردین 1384, 14:59 عصر
  2. پاسخ: 6
    آخرین پست: یک شنبه 14 فروردین 1384, 00:35 صبح
  3. رجیستر کردن یک کنترل
    نوشته شده توسط hamedj2001 در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: دوشنبه 21 دی 1383, 10:20 صبح
  4. اضافه کردن runtime کنترل به datagrid
    نوشته شده توسط mehdi3683 در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: دوشنبه 07 دی 1383, 11:57 صبح
  5. طریقه کار کردن با کنترل Timer
    نوشته شده توسط b_mohammadpoor در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 8
    آخرین پست: یک شنبه 26 بهمن 1382, 04:20 صبح

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

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