שאלה לגבי dynamic checkboxlist

era19

New member
שאלה לגבי dynamic checkboxlist

שלום לכולם אני מעוניין לשים באתר שלי checkboxlist שרק בזמן ריצה אני אדע כמה items יהיו בו.את הITEMS אני לוקח מה DB כשאני רוצה ליצור את האובייקט: dim checkboxlist1 as new checkboxlist For i = 0 To myTable.Rows.Count - 1 CheckBoxList1.Items.Add(myTable.Rows(i)(0)) CheckBoxList1.Items(i).Text = myTable.Rows(i)(0) CheckBoxList1.BackColor = Color.Beige Next בסוף אני רושם me.controls.add(checkboxlist1) השגיאה שהוא נותן לי זה שצריך לשים את הקוד הזה בין התגים של <form> </form> אבל אם אני יאשים את זה בקוד HTML אז זה כבר לא יהיה דינאמי ואני צריך שזה יהיה בקוד VB. מקווה שהבנתם את השאלה ,ושאתם יודעים את התשובה
 

tc2000

New member
לא בטוח שהבנתי, אבל...

זה לא אמור להפריע לך, אתה בכל מקרה רוצה שיהיה לך CheckBoxList באתר, אתה פשוט רוצה שהפריטים בו יכתבו דינאמית. תיצור CheckBoxList control בצורה רגילה, אתה עדיין יכול עם קוד בצד השרת להוסיף פריטים מה-DB שלך.
 

era19

New member
הבעיה מתחילה כשאני עדיין לא יודע...

כשאני עדיין לא יודע כמה checkboxlist אני צריך... נניח שיש לי 3 סוגי ספורט:כדורגל כדורסל והוקי. ולשם כך אני צריך 3 cheackboxlist שבכל אחד מהם יהיה מס' דינאמי של תיבות סימון. אבל אני לא יודע שיש לי רק 3 סוגי ספורט... כי אולי מחר אני אוסיף גם ספורט נוסף,טניס ולכן אני אצטרך 4 checkboxlist. בגלל שאני לא יודע מראש את מס' הcheckboxlist אני צריך לייצר את כולם דרך הקוד ואין לי מושג למה אני לא יכול לייצר אותם כמו אובייקט רגיל דרך הקוד ואני חייב לשים את זה בין התגים של form>
 

tc2000

New member
מצאתי

ניסיתי לעשות מה שאתה אומר, זאת אומרת להגדיר משתנה מסוג CheckBoxList, וב-Page_Load לעשות לו new, ולהוסיף לו פריטים בעזרת Items.Add, ולאחר מכן להוסיף אותו לעמוד ע"י this.Controls.Add. באמת קיבלתי את השגיאה שה-Control צריך להיות בתוך form runat=Server. אז מה שעשיתי (ועבד), זה להכניס את ה-CheckBoxList Control אל תוך ה-Control של ה-Form. אצלי זה היה ה-Control היחידי בדף, אז עשיתי:
this.Controls[0].Controls.Add(checkBoxList1);​
 

era19

New member
מה syntax ב VB.NET

ניסיתי לרשום FORM.CONTROLS.ADDׂCHECKBOXLIST1 והוא לא מזהה לי את הטופס או את השם וגם אם אני רושם: controls(0).controls.add(checkboxlist1) הוא נותן לי שגיאה שהוא לא מאפשר CHILD CONTROLS
 

tc2000

New member
Child Controls

נראה לי שניסית להוסיף אותו כ-Child Control ל-Control שלא יכול לקבל בנים. בניסוי שאני עשיתי היה לי רק Control אחד אז בגלל זה עשיתי Controls(0). אם יש לך הרבה Controls בעמוד, אתה יכול לעשות לולאה שעוברת על ה-Controls ומשווה את ה-ID שלהם לשם הטופס שלך, ואז תדע מה האינדקס של ה-Control של הטופס כדי להוסיף לו Child Control.
 
למעלה