تبلیغات :
آکوستیک ، فوم شانه تخم مرغی، صداگیر ماینر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 2 از 2

نام تاپيک: دسترسی Delegate به متد خصوصی کلاس دیگر در سی شارپ

  1. #1
    آخر فروم باز
    تاريخ عضويت
    Jul 2009
    پست ها
    6,351

    پيش فرض دسترسی Delegate به متد خصوصی کلاس دیگر در سی شارپ

    با سلام

    دوستان یک سوال:
    در این سه کلاس که نوشتم در کلاس Program ما باید تکلیف Event رو روشن کنیم که به کجا Add شود یعنی موقع اجرا بلاخره به کدام متد اشاره کند که یک متد از نوع دسترسی private نوشته شده و بهش اضافه شده.
    حال سوال اینجاست . در کلاس Worker در نهایت موقع اجرا متغیر del به متد Worker_WorkPerformed موجود در کلاس دیگر که Program هست و دسترسی private داره اشاره میکنه.
    چطور؟ یعنی متغیر و اعضای حصوصی فقط توسط همان اعضا و متغیر های کلاس قابل دسترسی هستند. ایجا چطور از کلاس Worker به متدی از کلاس Program اشاره دارد.
    با تشکر

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  2. #2
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    بله مشکلی ندارد.
    شش حوزه دید موجود فقط در حد مرئی/نامرئی عمل میکنند و تفاوت بنیادین ندارند.
    خلاصه عرض کنم، حتی بدون این کارها هم میتوان، اعضای private کلاس دیگر را (متغییر،متد،خصیصه و...) دستکاری کرد، مانند زمانیکه یک پوشه در هارد مخفی است ولی با دادن نام اش میتوان واردش شد...

    در شرایط عادی این اعضاء (در مثال شما تابع یا متد) دیده نمیشوند ، مخفی هستند.
    ولی در هرصورت شما از داخل خود کلاس که دسترسی به این اجزای private دارد، آدرس محل RAM آنها را در آورده اید و به دیگری داده اید...

    اگر دقت کرده باشید در برنامه های ویندوزی WinForm و WPF برای رویداد کنترلر ها (TextBox, Button, ...) اغلب از همین متدهای private استفاده میکنیم، این کاری عادی و مرسوم است.
    خودتان از داخل کلاس انجام داده اید که کاملا مجاز است.

  3. این کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •