ID של controls ב-asp.net & ולידציה

HaRmosh

New member
ID של controls ב-asp.net & ולידציה

אני יוצר בזמן ריצה conrol, נניח textbox בשם txtBox1. כנ"ל לגבי RequiredFieldValidator בשם validator1. כשאני מבצע:
validator1.ControlToValidate = txrBox1.ID​
אני מקבל שגיאה:
The ControlToValidate property of 'Validator1' cannot be blank​
ואני רואה שה-ID של txtBox1 הוא בכלל null, למרות שאני בעצמי קובע אותו כמה שורות לפני שאני עושה השמה ל-Validator1.ControlToValidate . באיזה שלב ניתן ל-control-ים בתוך Server-control שאני בונה id ? אני רואה שבכל שלב הוא null. תודה, הראל
 
תן דוגמת קוד. בעיקרון -

תוודא שאתה באמת יוצר את הקונטרול ונותן לו ID בכל טעינה של הדף (לא רק אם זה לא PostBack). אתה יכול גם במסגרת דיבאג לבדוק באיזו שורה בדיוק הולך לאיבוד ה- ID שנתת לו (אולי נתת ID ריק?). לפעמים יש השפעה לסדר הפעולות, כלומר האם קודם נתת ID או קודם הוספת את הקונטרול ל- Parent שלו, אבל לא נראה לי שפה זה משנה. בכל מקרה תשלח את הפונקצייה הבעייתית
 

sagie4

New member
מיקום אובייקטים הנוצרים בזמן ריצה

רשימת הפקדים והמידע שבהן ישמר בטופס וב- VIEWSTATE נוצרת בזמן ה- INIT, ולכן על מנת שתוכל להשתמש בפקדים שיצרת בטופס, יש לטעון אותם בשלב ה- OnInit
 
למעלה