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

نام تاپیک: رویداد Paint چجوری همون OnPaint هست؟!!!!!!

  1. #1

    رویداد Paint چجوری همون OnPaint هست؟!!!!!!

    چرا مثلا اسم خیلی از رویدادهایی که virtual هستن با دو حرف On شروع می شه مثل OnPaint , OnKeyDown , OnKeyPress ولی باز اونایی که مثلا توی خود فرم هستند دیگه On رو ندارن و چجوری می شه که اسم رویداد رو یه چیز دیگست ولی داره همون رو override می کنه؟!!!

    مثلا توی فرم رویداد Paint داریم ولی وقتی که می خوام این رو override کنم باید بزنم OnPaint !!

  2. #2

    نقل قول: رویداد Paint چجوری همون OnPaint هست؟!!!!!!

    سلام
    آن هایی که با on شروع می شوند، رویداد نیستند. بلکه متد هایی هستند که رویداد مورد نظر را raise می کنند.
    این متد ها اغلب به صورت protected Virtual تعریف می شوند که کاربری که از کلاسی که رویداد مورد نظر در آن تعریف شده است، ارث بری می کند، بتواند رویداد را overide کند ..

    چیزی شبیه به مثال زیر :


    public class BaseClass
    {
    public delegate void MyDelegateEventHandler(object sender, EventArgs e);
    public event MyDelegateEventHandler MyEvent;


    public BaseClass()
    {

    }


    protected virtual void OnMyEvent(EventArgs e)
    {
    if (this.MyEvent != null)
    {
    this.MyEvent(this, e);
    }
    }

    }








    public class DrivedClass :BaseClass
    {
    public DrivedClass()
    {
    //Constructor
    }
    protected override void OnMyEvent(EventArgs e)
    {
    base.OnMyEvent(e);

    }

    }




    موفق باشید

    مجموعه آموزشی Asp.Net Core Mvc کاملا به زبان فارسی(21 ماژول و 15 ساعت فیلم آموزشی همراه با سورس کامل تمرینات و پروژه عملی انجام شده در طول آموزشی)
    مشاهده جزئیات در آدرس http://www.mkiani.ir/blog/content/53084


    وب سایت : http://www.mkiani.ir
    پست الکترونیک : mkiani3000@gmail.com

    موفق و پیروز باشید.
    مهدی کیانی


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

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