דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. WPF הזנה שגויה בדטה גריד

WPF הזנה שגויה בדטה גריד

מתוזמן נעוץ נעול הועבר ארכיון code613m
5 פוסטים 2 כותבים 368 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • רחמיםר מנותק
    רחמיםר מנותק
    רחמים מורחק
    כתב ב נערך לאחרונה על ידי
    #1

    לאחר שהמשתמש סיים למלא שורה מסויימת בדטה גריד ועובר לשורה הבאה, אם אחד השדות מכיל אי התאמה בין הנתונים שהוזנו לסוג השדה מופיע סימן קריאה '!' אדום בראש אותה שורה בדטה גריד, כעת אני רוצה לדעת באיזה שדה בדיוק יש שגיאה, איפה זה כתוב? אני פשוט מעוניין להקפיץ איזו הודעה למשתמש או איזה טולטיפ שידע מה לתקן ולא יצטרך לנחש.

    תודה לכולם.

    פורסם במקור בפורום CODE613 ב30/01/2014 16:43 (+02:00)

    תגובה 1 תגובה אחרונה
    0
    • dovidD מחובר
      dovidD מחובר
      dovid ניהול
      כתב ב נערך לאחרונה על ידי
      #2

      בקוד זה הולך ככה:

      Validation.GetErrors(DataGridRow)
      

      במקום DataGridRow יכול לבוא כל פקד WPF, שיש בו או בצאצאיו קלט עם בינדינג כמדומני.

      בXAML, עם בינדינג לאלמנט, הנה דוגמא לבינדינג לאלמנט הנוכחי:

      "{Binding RelativeSource={RelativeSource Self}, Path=(Validation.Errors)[0].ErrorContent}"
      

      זה יכול להיות גם בטקסט בוקס וכו', זה התנהגות שישנה בכל פקדי קלט.

      כפי שאתה רואה הXAML ניגש לאינדקס מס' אחד, כי יכולים להיות כמה שגיאות, של כמה תאים למשל (אם תחבר את זה לתא ולא לשורה, אז תמיד תהיה רק שגיאה אחת).
      אז אם אתה רוצה להציג הכל תצטרך להשתמש בItemsControl.
      תוכל להשתמש עם טריגר על Validation.HasError.
      בשביל לשנות את התנהגות התצוגה בWPF במקרה של שגיאה יש מאפיינים מוכנים כמו ValidationErrorTemplate שמקבלים ContrleTemplate.
      ברמת השורה תוכל גם לשנות את הסימן קריאה וכיוצא בזה.

      פורסם במקור בפורום CODE613 ב30/01/2014 18:09 (+02:00)

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      תגובה 1 תגובה אחרונה
      1
      • רחמיםר מנותק
        רחמיםר מנותק
        רחמים מורחק
        כתב ב נערך לאחרונה על ידי
        #3

        @דוד ל.ט.

        תוכל להשתמש עם טריגר על Validation.HasError.

        איפה שמים את הטריגר הזה?

        @דוד ל.ט.

        Validation.GetErrors(DataGridRow)

        יש ארוע שקופץ כאשר יש שגיאות?

        פורסם במקור בפורום CODE613 ב30/01/2014 18:29 (+02:00)

        תגובה 1 תגובה אחרונה
        0
        • dovidD מחובר
          dovidD מחובר
          dovid ניהול
          כתב ב נערך לאחרונה על ידי
          #4

          @רחמים

          @דוד ל.ט.
          תוכל להשתמש עם טריגר על Validation.HasError.

          איפה שמים את הטריגר הזה?

          @דוד ל.ט.

          Validation.GetErrors(DataGridRow)

          יש ארוע שקופץ כאשר יש שגיאות?

          איפה? איפה שרוצים.
          ארוע? לא יודע. למה אתה צריך?

          פורסם במקור בפורום CODE613 ב02/02/2014 13:43 (+02:00)

          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

          בכל נושא אפשר ליצור קשר dovid@tchumim.com

          תגובה 1 תגובה אחרונה
          0
          • רחמיםר מנותק
            רחמיםר מנותק
            רחמים מורחק
            כתב ב נערך לאחרונה על ידי
            #5

            עשיתי כך: (ME = מחלקה יורשת מדטה גריד)

             Dim Errors = Validation.GetErrors(Me)
            

            וזה לא הכיל כלום אף שהקלדתי בדטה גריד אותיות במקום מספרים והתא הפך לאדום.
            מה הטעות?

            @דוד ל.ט.

            ארוע? לא יודע. למה אתה צריך?

            אני הייתי רוצה שכאשר יש שגיאה תיקפוץ הודעת שגיאה ולא רק שינוי ויזואלי של הפקדים, ושבהודעה תהיה רשימה של שגיאות ומה מיקומן מדוייק בדטה גריד.

            פורסם במקור בפורום CODE613 ב02/02/2014 13:58 (+02:00)

            תגובה 1 תגובה אחרונה
            0

            בא תתחבר לדף היומי!
            • התחברות

            • אין לך חשבון עדיין? הרשמה

            • התחברו או הירשמו כדי לחפש.
            • פוסט ראשון
              פוסט אחרון
            0
            • דף הבית
            • קטגוריות
            • פוסטים אחרונים
            • משתמשים
            • חיפוש
            • חוקי הפורום