الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

س : إعادة تحميل الفورم .

مغلق
بدأه الكتاح في 16 سبتمبر 2007 · 5 رد · 2,004 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الإخوة الأكارم / السلام عليكم

تقبل الله منا و منكم الصّيام و القيام

في فيجوال بيسك 6 كانت هناك العبارة unload me ثم me.show و ذلك من أجل إغلاق الفورم ثم إعادة تحميله مرّة أخرى ..

الغرض من ذلك إعادة كل المكونات إلى حالته الأساسيّة ..

ما هو المقابل لذلك في فيجوال بيسك دوت نت 2003 ؟

جزاكم الله خيراً

#2
For Each c As Control In Me.Controls
			c.Dispose()
		Next
		Controls.Clear()
		InitializeComponent()
		Form1_Load(Me, Nothing)

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#3

جزاك الله خيراً ، جرّبت الكود و لكنّه أعطاني رسالة الخطأ التالية :

Object reference not set to an instance of an object.

و كانت العبارة التي ظللها هي :

c.Dispose()

من ناحية أخرى ، هل يعمل الكود dispose للمكونات الموجودة داخل مكونات أخرى ؟ أنا دائماً ما أضع عدة panel في الفورم و أضع عليها الأدوات ..

#4

يفترض ان الدالة تعمل بدون اي مشاكل

لاني استخدمها في نموذج به بانل وليبل وبوتون وغيره فهو ياخد كل ماهو كنترول ويلغيه وايضا اذا حذف البانل فلتقائيا كل ماهو داخلها يذهب معها

الرسالة الخطأ التي ظهرت لك تعني انك تريد حذف عنصير غير موجود اصلا

وهذا غير منطقي

ولحل المشكلة حاول تعرف ماهو العنصر وبعدها تعمل عليها تجاوز عن الحذف بجملة شرطية

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#5

Me.Hide()

Me.Close()

#6

السلام عليكم

أعتقد أنه مع تعديل بسيط يحل المشكل

dim c As Control
For Each c In Me.Controls
			c.Dispose()
		Next
		Controls.Clear()
		InitializeComponent()
		Form1_Load(Me, Nothing)

هذا الموضوع مغلق.

مواضيع مشابهة