dispose form..

Zeliran

New member
dispose form..

יש לי event שיוצר אינסטנס של טופס אחר ופותח אותו איך אני יכול לעשות שברגע שהמשתמש סוגר את הטופס שנפתח, התוכנית תעשה dispose לאינסטנס שיצרתי? או שאולי יש דרך יעילה יותר?
 

gilad g

New member
אם אני לא טועה,

אתה לא צריך לעשות Dispose... אני חושב שהוא עושה את זה בשבילך כשהטופס נסגר. ואם זה לא נכון, אתה תמיד יכול להירשם לאירוע Closed.
 

Zeliran

New member
../images/Emo41.gifהבדלים בין Close ל Dispose?

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

yuval k

New member
עקרונית, Close מבצעת Dispose

אלא אם הטופס מודאלי, שאז Close מסתירה את הטופס (וניתן להציגו שוב). כדי לפנות את הזיכרון אחריו צריך לקרוא ל-Dispose
 

nattygur

New member
בהמשך לתשובתו של יובל

Close ו Dispose הם שני עולמות נפרדים. בעוד ש Close היא מתודה של מחלקת Page אשר תפקידה לסגור את החלון, Dispose היא שגרה אשר הדף ממש משום שהוא ממש את הממשק IDisposable. ה Dispose הוא חלק מ Design Pattern שמיקרוסופט מימשה בכדי לטפל בשחרור זיכרון. הטיפול בשחרור זיכרון נעשה ע"י ה GC אבל ה GC מטפל ב Managed Typesולא ב Unmanaged Types כגון ה Handle של החלון. במימוש ה Dispose החלון מנקה את ה Unmamaged memory ולכן רצוי לקרוא ל Dispose.
 

Zeliran

New member
Validator ב forms?

האם קיים פקד כמו ה RequiredValidator (וסוגיו האחרים..) שאפשר גם להשתמש בו לאפליקציות לwin ולא רק ל webForms?
 
למעלה