הגדרת פעולות בלחצנים של הmessagebox
-
אני רוצה שכשאר המשתמש בוחר לסגור את התכנית ובוחר ב"סגור",
התכנית תבדוק האם הנתונים נשמרו בעבר או שהיה שינוי מהשמירה האחרונה, ותציע למשתמש לשמור אותם במידה ויש בכך צורך.
(ממש כמו בוורד או בכל תכנית אחרת).
ראיתי שאני יכול במסג'בוקס להציג את הלחצנים:yes,no,cancel ואני רוצה שלחיצה על yes תקרא למתודת השמירה ולחיצה על no תצא מהתכנית.
השאלה כיצד אני יכול לממש זאת.. חיפשתי בגוגל ולא מצאתי..
(או שאני צריך לממש את ההודעה הזאת בעצמי ע"י יצירת מסך עם 3 כפתורים...)
כמו כן, האם יש דרך לשנות את השפה של הכפתורים הללו לעברית?
תודה רבה רבה מראש!!פורסם במקור בפורום CODE613 ב16/09/2015 16:40 (+03:00)
-
אתה צריך לקרוא את מה שהShow מחזיר:
var result = MessageBox.Show("text", "title", MessageBoxButton.YesNoCancel, MessageBoxImage.Question, MessageBoxResult.OK, MessageBoxOptions.RtlReading); switch (result) { case MessageBoxResult.Yes: break; case MessageBoxResult.No: break; case MessageBoxResult.Cancel: break; }
פורסם במקור בפורום CODE613 ב16/09/2015 21:09 (+03:00)
-
@דוד ל.ט.
אתה צריך לקרוא את מה שהShow מחזיר:
הבעיה שאני לא מצליח להבין היכן נמצא הערך שהmessagebox מחזיר...
ניסיתי עם הדבאג ואכן הוא מחזיר ערך מסוג messagebox.show בשם returned
אולם בשעה שאני כותב את התכנית הקומפיילר לא מכיר כזה משתנה, ולכן הוא נותן לי שגיאה..
מה לעשות?
תודה רבה!פורסם במקור בפורום CODE613 ב16/09/2015 23:34 (+03:00)
-
MessageBox היא פונקצייה שמחזירה מספר (שממומש בMessageBoxResult)
אתה יכול ליצור משתנה מספר או MessageBoxResult, ואז "להעביר" אליו את מה שיש בפונקצייה - וכמו שהראה דוד בדוגמא שלו,
ואז להשתמש בערך שנוצר בשביל לדעת מה לחץ המשתמש.תנסה לעשות העתק הדבק לקוד של דוד בלי להבין אותו, ואז לשים בריק פוינט ולעבור שורה שורה עם הדבאג.
פורסם במקור בפורום CODE613 ב16/09/2015 23:59 (+03:00)