WPF: כיצד אפשר לשנות את אירוע ה"קליק" של לחצן דרך הקוד?
-
אני רוצה שאם המשתמש מחפש חיפוש מסוג מסוים כפתור השמירה יהיה מנוי לאירוע X ואם מופעל חיפוש אחר הוא יהיה מנוי לאירוע Y.
ניסיתי לעשות זאת ואני לא מצליח
ראיתי שיש ללחצן 2 אפשרויות: click clickMode
אבל משום מה כשאני מנסה דרך הקוד לשנות להם את האירוע - אני מקבל שגיאה..
אם אני כותב כך:saveSearchButton.ClickMode = SaveSearchDonor();
אני מקבל שגיאה זו:
There is no argument given that corresponds to the required formal parameter 'sender' of 'AddTruma.SaveSearchDonor(object, RoutedEventArgs)'ואם אני כותב כך:
saveSearchButton.Click += SaveSearchDonor();
אז אני מקבל גם את השגיאה הקודמת וגם את זו:
Cannot implicitly convert type 'void' to 'System.Windows.RoutedEventHandler'תודה רבה!!
פורסם במקור בפורום CODE613 ב06/09/2015 00:43 (+03:00)
-
ClickMode זה מתי מתרחש הארוע קליק, זה לא יעזור לך
הרשמה לארוע ב C# עושים כךthis.button1.Click += new System.Windows.RoutedEventHandler(this.button1_Click)
כשתרצה להסיר ולהוסיף מטפל אחר במקום, פשוט תעשה מינוס '-' במקום פלוס '+'
פורסם במקור בפורום CODE613 ב06/09/2015 01:02 (+03:00)
-
לא הצלחתי ולא ככ הבנתי..
אני רוצה שכאשר לוחצים על כפתור 1 (חיפוש תורם) אז לכפתור 2 ישתנה האירוע שאליו הוא מנוי, כך שאם המשתמש יבחר ללחוץ עליו הוא יפעיל אירוע מסוים (שמירת קובץ X). ואם לוחצים על כפתור 3 (חיפוש תרומות) אז לכפתור 2 ישתנה האירוע כך שהוא יפעיל אירוע של שמירת קובץ Y.
לכן אני מנסה להגדיר בקוד של כפתור 1 את האירוע של כפתור 2, וכן בקוד של כפתור 3.פורסם במקור בפורום CODE613 ב06/09/2015 01:09 (+03:00)
-
אני רוצה שכאשר לוחצים על כפתור 1 (חיפוש תורם) אז לכפתור 2 ישתנה האירוע שאליו הוא מנוי, כך שאם המשתמש יבחר ללחוץ עליו הוא יפעיל אירוע מסוים (שמירת קובץ X). ואם לוחצים על כפתור 3 (חיפוש תרומות) אז לכפתור 2 ישתנה האירוע כך שהוא יפעיל אירוע של שמירת קובץ Y.
לכן אני מנסה להגדיר בקוד של כפתור 1 את האירוע של כפתור 2, וכן בקוד של כפתור 3.במקרה כזה אתה לא צריך לשנות את האירוע של הכפתור, תיצור משתנה שיכיל את שם או הכתובת של הקובץ שאותו אתה רוצה לשמור, ובלחיצה על הכפתור תשחק עם הערכים של המשתנה הזה.
פורסם במקור בפורום CODE613 ב06/09/2015 02:39 (+03:00)
-
טוב, אז אסביר את עצמי יותר טוב
במסך החיפוש אפשר לבצע 2 סוגים שונים של חיפושים, אחד חיפוש של אובייקט מסוג תורם על פיכל מיני פרמטרים, והשני של אובייקט מסוג תרומה כנ"ל. כל חיפוש כזה שומר את התוצאות במשתנה של ליסט מהסוג שלו.
כמו כן, יש למשתמש כפתור של אפשרות לייצא את תוצאות החיפוש לקובץ.
בהתחלה כתבתי בקוד של הכפתור שאם המשתנה הראשון אינו null שישמור את הליסט הראשון לקובץ ואם השני אינו null שישמור את השני.
הבעיה היא מה קורה שהוא הריץ את החיפוש הראשון ואחריו את השני או להיפך, ואח"כ החליט שהוא רוצה לשמור את החיפוש השני, במקרה זה שני המשתנים אינם null וא"כ כיצד אדע מה לשמור?
ההנחה שלי שאת החיפוש שהוא ביצע אחרון הוא רוצה לשמור, כיון שברגע שבמסך מוצגות לו רק התוצאות של החיפוש האחרון..
לכן חשבתי בהתחלה שכאשר מתבצע חיפוש מסוג מסוים הוא משנה את אירוע הקליק של כפתור השמירה, כך שאם הוא יבחר לשמור את החיפוש אדע איזה סוג של משתנה לשמור. וממילא אם הוא לא ישמור ויבצע חיפוש מהסוג השני - האירוע של הכפתור ישתנה.בסוף חשבתי על רעיון פשוט כ"כ :lol: כאשר הוא מבצע חיפוש אני מציב במשתנה השני null וככה מאפס אותו.. ובא לציון גואל!!
בכל זאת אשמח לדעת את התשובה לשאלה המקורית...
תודה רבה!פורסם במקור בפורום CODE613 ב06/09/2015 07:24 (+03:00)
-
הקוד השני שהבאת בפוסט הראשון הוא מצויין והבעיה היחידה שלו זה הסוגריים אחרי שם המתודה (מה שמפעיל אותה ומחזיר את תוצאתה בעוד אתה רוצה להביא אותה עצמה).
לא הבנתי לגמרי את הUI שם, אבל בכל מקרה אפשר לעשות זאת יותר בפשטות מאשר הפניית אירוע. בקוד הייצוא אתה יכול לבדוק כמו שאבי אמר מה העניינים, וזה לא משנה לכאורה כמה מורכבת שם הסוגיא
פורסם במקור בפורום CODE613 ב06/09/2015 10:50 (+03:00)