PDA

View Full Version : سوال: event ها



mehdihadeli
پنج شنبه 11 شهریور 1389, 22:12 عصر
چگونه event ها در کلاسی مثل button اجرا میشود در حالی که ما فقط برای آن یک تابع handler تعریف میکنیم.

amir-yeketaz
پنج شنبه 11 شهریور 1389, 22:36 عصر
برای اینکه بفهمید که چجوری این اتفاق میفته اون event (منظورم اون متد ) رو کاملا پاک کنید بعد متوجه یه ارور در زمان کامپایل خواهیند شد ... حال اگه در قسمت Error List در VS روی ارور مربوطه کلیک کنید به اونجایی که میگین وجود نداره خواهید رفت و بدونید که نمیشه که اون وجود نداشته باشه در واقع وقتی شما یه ایونت رو از ایونت ها در VS فراخونی میکنید به صورت اتوماتیک اون ساخته میشه ولی در Designer ...
(البته ببخشید که من اسمشو درست بلد نیستم چون زیاد به اسم ها و اصطلاحات کاری ندارم!)

موفق باشید

mehdihadeli
جمعه 12 شهریور 1389, 02:15 صبح
درست بود. ولي فقط متدهايي كه روي event كلاس button

handel شده اند را نشان داد. اون event چطوري تو كلاس button

call ميشه؟

اينو نميشه ديد؟آيا داخل يك void در كلاس يا روي get ,set يك property از كلاس

eventname( ); اجرا ميشه؟

محسن شامحمدی
جمعه 12 شهریور 1389, 06:40 صبح
اگر می خواین همه event های یک شی رو ببینید کافیه رو ش کلیک کنید و در قسمت properties روی دکمه events کلیک کنید
اینطوری تموم event های اون شی رو می بینید.
توی سی شارپ همه رویدادها مخفی اند(ولی در وی بی اینطور نیست) و این دلیل بر عدم وجودشان نیست.
در واقع این رویداد واسه خودش وجود داره ولی فقط هر موقع توش کد می نویسی اجرا می شه :گیج:

call ميشه؟

تقریبا:
رویدادها در خود کلاس raise می شن یعنی اتفاق می افتن
برای درک بهتر این قضیه پیشنهاد می کنم یک کامپوننت ساده بسازید که حد اقل 1 رویداد و یک متد داشته باشه تا متوجه قضیه (به طور اصولی) بشین