ערכתי לאחרונה בתאריך 29.07.07 בשעה 11:44 בברכה, lior066
טוב אז היום ייתי צריך לחשוב על דרך לייעל את רמת האימות נתונים שלי עקב המון טפסים במערכת , והגעתי לפתרון דיי יצירתי , ואני דיי גאה בו.אז ככה:
טוב התיאורייה שלי היא כזאת אני לוקח בלוק של נתונים ומריץ עליו בדיקה של פקד פקד , ובונה פונקציות מתאימות לסוגי אימות נתונים שאני רוצה שיחזרו עלייהם בעתיד.
אני עושה את זה עכשיו בלי ממש לבדוק את זה על המחשב אז ככה שאם יש לכם בעיות ריצה או משהו , תסדרו את זה כי זה בטח יהיה בקטנה.
אז ככה מה שהחלטתי לעשות הוא להשתמש בפעולות של
בשביל לעבור פקד פקד.
עכשיו מה שעשיתי זה שאני בונה לי קבוצת אישורים קטנה שתכלול בתוכה את סוגי האישורים
לדוגמא יש לי עכשיו 4 תיבות טקסט
ואני רוצה שכולם יהיו מלאים
אני שם בתוך המאפיין של התיבות טקסט ValidationGroup ערך כלשהו של קבוצה ( עדיף שיהיה קבוע ותתרגלו לשם הזה כי אתם הולכים לעבוד איתו לאורך כל שאר הפרוייקט שלכם וגם לפרוייקטים אחרים.)
עכשיו נגיד ועשיתי את שם הקבוצה : TxtGroup שבשבילי אני רוצה שהקרטריונים שהקבוצה הזאת תבדוק זה שהטקסטים לא ריקים
אז מה שאני עושה זה דבר שכזה:
Dim Flasg As Boolean = False For Each C In form1.Controls If TypeOf C Is TextBox Then If (C.ValidationGroup = "TxtGroup") And (C.text = "") Then flag = True End If End If Next
|
יש לי דגל שאומר לי עם עבר אימות או לא , עכשיו מה שיפה זה שאני יכול לבנות לי פונקצייה שמוודאת כל פעם קבוצה שכזאת , מתי שאני רוצה דרך CLASS כלשהו שיהיה אחראי על ווידוא של קלט.
אז אני בונה את הפונקצייה הבאה:
Public Function ValidateForm(ByVal Cc as ControlCollection , ByVal ValidationGroup As string) as boolean
|
עכשיו אני יכול להכניס לתוך הפונקצייה הזאת הת הפורם שהקבוצת פקדים נמצאת שם או כל אוסף פקדים שתרצו , לשלוח סוג אימות נתונים וואלה , יש לכם אימות נתונים מהיר , זריז ובלי שום בעיות.
עכשיו מה שעוד אפשר לייעל את הקוד הוא ככה.
אפשר למלאות את הפקדים באופן הבא:
ValidationGroup = TxtGroup|אנא הכנס שם מלא
ואז כששולחים את האובייקט הוא יכול לחלץ לנו את השגיאה של הפקד הראשון שהוא נתקל בו באימות ולזרוק
Throw של אקספציון של השגיאה ולהציג אותה בליבל כלשהו על הפורם.
מקווה שהבנתם ובהצלחה לכם במימוש.