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

نام تاپیک: پاس دادن datagridview و تغییر ناخواسته در اصل آن!!

  1. #1
    کاربر دائمی
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    دیار کریمان
    پست
    1,008

    Question پاس دادن datagridview و تغییر ناخواسته در اصل آن!!

    سلام

    روی فرم اصلی یه دیتاگرید ویو دارم که با زدن یه دکمه فرم جدیدی که حاوی یه یوزرکنترل رو با کد نویسی ایجاد و باز میکنم
    و دیتاگرید رو بهش پاس میدم
    در فرم ایجاد شده باید بعضی از ستونهای دیتاگرید رو به انتخاب کاربر حذف کنم (با کد نویسی)
    اما همرمان با حذف اون ستونها در دیتاگرید اصلی که زیر فرم فعلی و در فرم اصلی وجود داره هم حذف میشن
    حتی در فرم جدید با کد نویسی دیتاگرید جدیدی ایحاد و دیتاگرید پاس داده شده رو بهش نسبت میدم
    اما باز هم ستونهای دیتاگرید اصلی حذف میشن

    چه باید کرد؟

    تشکر

  2. #2
    کاربر دائمی
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    دیار کریمان
    پست
    1,008

    نقل قول: پاس دادن datagridview و تغییر ناخواسته در اصل آن!!

    چطور ممکنه شی ای که به فرم دیگه ای پاس داده شده و اونجا به شی جدید نسبت داده شده و با تغییر شی جدید روی شی اصلی هم تاثیر بذاره ؟
    دوستان نظری ندارن

  3. #3
    کاربر دائمی آواتار Esmail Solhkhah
    تاریخ عضویت
    مهر 1385
    محل زندگی
    بورکینافاسو
    پست
    1,774

    نقل قول: پاس دادن datagridview و تغییر ناخواسته در اصل آن!!

    اگه ممکنه کد رو بزارید

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

    نقل قول: پاس دادن datagridview و تغییر ناخواسته در اصل آن!!

    فرم اول
     uc.set_datagridview =dgv ;
    ff.ShowDialog();


    فرم دوم
          public DataGridView set_datagridview
    {
    set { dgv = value; }
    }

    DataGridView dgv3 =new DataGridView() ;
    dgv3 = dgv;
    dgv3.Columns.Remove("name");


    با حذف کردن ستون نام در فرم دوم - همان ستون در فرم اول نیز پاک میشود!!!

    اگه توضیح بیشتری هم نیازه بگید.

    تشکر

  5. #5
    کاربر دائمی آواتار Esmail Solhkhah
    تاریخ عضویت
    مهر 1385
    محل زندگی
    بورکینافاسو
    پست
    1,774

    نقل قول: پاس دادن datagridview و تغییر ناخواسته در اصل آن!!

    دیتاگریدویو موقع پاس به عنوان پارامتر Reference Type در نظر گرفته میشه
    مث اینکه یه ref موقع پاس کردن قبلش گذاشتی ، پس این امر طبیعیه

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

    نقل قول: پاس دادن datagridview و تغییر ناخواسته در اصل آن!!

    نقل قول نوشته شده توسط esmail_Solhkhah مشاهده تاپیک
    دیتاگریدویو موقع پاس به عنوان پارامتر Reference Type در نظر گرفته میشه
    مث اینکه یه ref موقع پاس کردن قبلش گذاشتی ، پس این امر طبیعیه
    متوجه منظورتون نشدم
    خب با این اوصاف به نظر شما چه باید کرد؟

    تشکر

  7. #7
    کاربر دائمی آواتار Esmail Solhkhah
    تاریخ عضویت
    مهر 1385
    محل زندگی
    بورکینافاسو
    پست
    1,774

    نقل قول: پاس دادن datagridview و تغییر ناخواسته در اصل آن!!

    ببینید موقع پاس کردن پارامترها بصورت رفرنس :

    یه کپی از پارامتر ارسالی ایجاد نمیشه بلکه تغییرات رو خود پارامتر اعمال میشه

    در حالی که برای Value Type ها یه کپی ازش ساخته میشه و متد یا گیرنده از اون استفاده میکنه بدون تغییر در اصل پارامتر

    در مورد گرید شما هم وضعیت اینطوره

    یه سرچی تو MSDN Online بکنید

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

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