לאירועים שאנחנו מקפיצים אנחנו צריכים להעביר EventArgs.
תכלס זו מחלקה שלא מכילה כלום, אבל הקונבנציה היא לרשת ממנה באירועים, למרות שהיה אפשר גם להשתמש בכל object.
מה שיוצא זה שאנחנו יוצרים מלא מחלקות לכל אירוע שאנחנו רוצים להקפיץ.
בניגוד לEventHander
|
|
אפשר לעשות גם שהProperty הזה יהיה readonly (ראו גם טיפ מספר 14):
|
|
ככה נוכל ליצור אירועים משלנו בצורה יותר נחמדה:
|
|
ולהקפיץ אותו (כרגע בלי בדיקה שהוא תקין):
|
|
אפשר קצת להתבלבל מרוב משתנים גנריים.
לסיום, אפשר לעשות implicit cast כדי שלא יהיה צורך לעשות new מאולץ לEventArgs:
|
|
ואז להקפיץ בצורה טיפה יותר יפה
|
|
סופ"ש עם אירועים מלאי פריטים טוב