שאלה | פרמטרים / C# Events - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

שאלה | פרמטרים / C# Events


maimon_y

Recommended Posts

שמתי לב שwindows form כל האיוונטים (event) מקבלים שני פרמטרים אחד object sender והשני eventargs e .

מה שלא ברור לי זה איך בהוספה של פונקיצה לאיוונט מכנסים רק פרמטר אחד ולא 2.

לדוגמה : this.button2.Click += new System.EventHandler(this.Operator);

ומה זה eventargs

קישור לתוכן
שתף באתרים אחרים

אתה מעביר delegate ולא פונקציה. ה delegate מעביר פונקציה, לא פרמטרים. הפונקציה שאתה מעביר דרכו, היא צריכה 2 פרמטרים.

לגבי השאלה השניה, ההערות ב:

https://msdn.microsoft.com/en-us/library/system.eventhandler%28v=vs.110%29.aspx

או דוגמא:

https://msdn.microsoft.com/en-us/library/system.eventargs(v=vs.110).aspx

קישור לתוכן
שתף באתרים אחרים

אתה מעביר delegate ולא פונקציה. ה delegate מעביר פונקציה, לא פרמטרים. הפונקציה שאתה מעביר דרכו, היא צריכה 2 פרמטרים.

לגבי השאלה השניה, ההערות ב:

https://msdn.microsoft.com/en-us/library/system.eventhandler%28v=vs.110%29.aspx

או דוגמא:

https://msdn.microsoft.com/en-us/library/system.eventargs(v=vs.110).aspx

תודה על התשובה המהירה. אני קראת וראיתי סרטונים אבל עדיין לא הבנתי את המשמעות של המחלקה EventArgs כמחלקה בפרט וכפרמטר חיוני ב EventHandler .

לפי מה שהבנתי אם האיונט לא מייצר נתונים אז EventArgs יהיה שווה EventArgs.Empty ציטוט If the event does not generate event data, the second parameter is simply the value of the EventArgs.Empty field)msdn)

אתה יכול להביא לי דוגמה אוביקט שיכול להיות פרמטר של e חוץ מ null.?

קישור לתוכן
שתף באתרים אחרים

כן, הבאתי לך כבר בדוגמא בלינק השני בסוף שלו. או שאתה מנסה בכח לחפש משהו שמיקרוסופט מייצרת בתוך WinForms אפשר גם למצוא בלי בעיה:

https://msdn.microsoft.com/en-us/library/system.windows.forms.mouseeventargs(v=vs.110).aspx

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...