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

نام تاپیک: Ref + Params

  1. #1

    Ref + Params

    ضمن خسته نباشید خدمت همه استاید .
    همونطوری که می کدونید اگه بخواییم یک کنترل رو (مثل TextBox ) بفرستیم به یک تابع خارج از کلاس و مقدار اون رو تغییر بدیم می بایست از Ref استفاده کنیم . مثلا :

    changevalue(ref textbox1);
    .
    .
    .
    public static void changevalue(ref TextBox a){
    a.Text= "ali";
    }


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

    public static void test(params object[] parameter){
    // do...
    }
    .
    .
    .
    1- test("ali","mohamad");
    2-test("reza");
    3- test("ali","mohamad","reza",.........,"amin");


    * حالا سوال من این هست که هر دو اینها رو بصورت همزمان من چطوری می تونم انجام بدم یعنی یک سری TextBox( مه تعدادشون هم معلوم نیست ) رو بفرستم به تابع و مثلا خاصبت Text اونها رو تغییر بدم و این تغییر بروی خود TextBox ها اعمال بشه؟
    کد زیر می دونم غلط هست اما یه چیزی شبیه به این می خوام :

    public static void changevalue(params ref TextBox[] parameter){
    //...
    }
    .
    .
    .
    1-changevalue(TextBox1);
    2-changevalue(TextBox1,TextBox2);
    3-changevalue(TextBox1,TextBox2,TextBox3,...,TextBox N);

  2. #2
    کاربر دائمی آواتار Directx
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    نامعلوم
    پست
    243

    نقل قول: Ref + Params

    خوب دوست عزیز اینجا کلمه ref اضافست یعنی کافیه که params رو اول آرایه بیارید

  3. #3

    نقل قول: Ref + Params

    خوب اونوموقع تغییرات بروی TextBox ها اعمال نمیشه عزیز ، فقط به مقادیر اونها میشه دسترسی پیدا کرد

  4. #4
    کاربر دائمی آواتار Directx
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    نامعلوم
    پست
    243

    نقل قول: Ref + Params

    امتحان کردین یا همینجوری می گین ؟ البته من خودم امتحان نکردم ولی معمولا prams رو همراه یه آرایه میارید تو تابع فک کنم با پارامتر های ارسالی مثل یه آرایه رفتار می شه یعنی آدرس اون ها رو می گیره اجازه بدید امتحان کنیم اگه بخایید نمونه کد میزارم (اگه جواب داد)

  5. #5

    نقل قول: Ref + Params

    ایراد از کد من بود به یه نحو دیگه کد نویسی کردم درست شد ، فرمایش شما درست بود . الکی تاپیک زدم . عذر می خوام

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

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