السلام عليكم جميعا
عندي مشكلة صغيرة و اتمنا ان اجد لها حل هنا و امل ان تساعدوني شباب
انا اقوم بعمل برنامج و اريد ان استخدم اكثر من واجهة في نفس ال form
فقد صنعت قائمة جانبيه في الفورم الرائيسي
لذلك انا اقوم بعمل usercontrol و اضيف اليها جميع ما احتاج من مربعات فارغه و كبسات ...
و اضع الكود الازم . من ثم اقوم بوضع panel في ال form الرائيسي و اقوم بسحب usercontrol الى ال panel واقوم بالتحكم باظهار و اخفاء ال panels
مشكلتي هي انه يحدث معي مشاكل كثيرة منها ان ال form لا يظهر و واواجة مشاكل بال design او يقوم ال visual studio بالخروج ويعمل crash
سؤالي هو هل يوجد طريقه بديلة لمل اقوم به ؟؟
لاني لا افضل وضع كل الادوات و كل الكود في نفس الفورم فيصعب التعديل على ال design و الكود ايضا
لان ال panels سيغطون بعضهم البعض
اتمنا اني قمت بالشرح الكافي
وشكرا
Usercontrol
غالبا انت لديك مشكلة في الكود الخاص بهذا userControl و هذا ما يؤدي الي Crash
ايضا كيف نجد لك شئ بديل بدون أن نري تصميم هذا الكونترول أو شكله
(10-09-16, 04:56 AM)silverlight كتب : [ -> ]غالبا انت لديك مشكلة في الكود الخاص بهذا userControl و هذا ما يؤدي الي Crash
ايضا كيف نجد لك شئ بديل بدون أن نري تصميم هذا الكونترول أو شكله
لقد قمت بتحديث الموضوع صديقي القي نظرة
اما بالنسبة للكود فهو طويل هل اقوم باظافتة كمرفق ؟
وشكرا
لا تضف الusercontrol الى ال panel في وقت التصميم
انا استخدم طريقة مشابهة لطريقتك وكتبت method لاضافة usercontrol الى panel عند الحاجة
يعني تحتاج الى بانل واحد في الفورم هو من يستقبل usercontrols
لا تنسى dispose للمحتويات الاولى قبل ارفاق محتويات جديدة
(10-09-16, 04:24 PM)محمد كريّم كتب : [ -> ]لا تضف الusercontrol الى ال panel في وقت التصميم
انا استخدم طريقة مشابهة لطريقتك وكتبت method لاضافة usercontrol الى panel عند الحاجة
يعني تحتاج الى بانل واحد في الفورم هو من يستقبل usercontrols
لا تنسى dispose للمحتويات الاولى قبل ارفاق محتويات جديدة
شكرا للرد صديقي
ما هي المثود الخاصه لاستدعاء ال usercontrol ?
استخدم الكود مثلا فيه عدد 2 يوزر كونترول
loginme
addme
في زر في الواجهة الرئيسية اكتب
dim uslogin as new loginme
panel.controls.clear
panel.controls.add(uslogin)
وهكذا للبقية
اعجبتني القائمة هل ممكن تقول شلون سويتها
يمكن عمل دالة كهذه (سي شارب)
كود :
public void assign_userControl(UserControl uc)
{
foreach (Control c in panel1.Controls)
{
c.Dispose();
}
panel1.Controls.Add(uc);
uc.Dock = DockStyle.Fill;
}
بالمناسبة هل تستخدم أدوات devexpress ؟ أم أنها wpf فقط ؟
أعجبتني الأدوات وخصوصا ال placeholder
الفورم الرئيسي
PHP كود :
Public Class Form1
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
frms.Controls.Clear()
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
frms.Controls.Clear()
For Each f As UserControl In frms.Controls
f.Dispose()
Next
frms.Controls.Add(New frm_login)
End Sub
Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
frms.Controls.Clear()
For Each f As UserControl In frms.Controls
f.Dispose()
Next
frms.Controls.Add(New registerme)
End Sub
End Class
في الزر الغاء ننقر me.dispose وحتى باي زر اخر بعد الاستغناء عنه
(10-09-16, 05:40 PM)سعود كتب : [ -> ]استخدم الكود مثلا فيه عدد 2 يوزر كونترول
loginme
addme
في زر في الواجهة الرئيسية اكتب
dim uslogin as new loginme
panel.controls.clear
panel.controls.add(uslogin)
وهكذا للبقية
اعجبتني القائمة هل ممكن تقول شلون سويتها
اهلا اخي سعود
انا استخدم ادوات خاصه تسمى Metro
سوف اقوم بارفاقها بالرد
وهذه طريقه تركيبها :
How to use Winforms Modern UI
اما بالنسبة للقائمة استخدمت button و جعلت خاصية الشكل flat
وقمت بالتحكم بالالوان عن طريق الكود ، اذا اردت الطريقه كاملة ساقوم بعمل موضوع لها
(10-09-16, 07:26 PM)محمد كريّم كتب : [ -> ]يمكن عمل دالة كهذه (سي شارب)
كود :
public void assign_userControl(UserControl uc)
{
foreach (Control c in panel1.Controls)
{
c.Dispose();
}
panel1.Controls.Add(uc);
uc.Dock = DockStyle.Fill;
}
بالمناسبة هل تستخدم أدوات devexpress ؟ أم أنها wpf فقط ؟
أعجبتني الأدوات وخصوصا ال placeholder
اهلا اخي سعود
انا استخدم ادوات خاصه تسمى Metro
سوف اقوم بارفاقها بالرد
وهذه طريقه تركيبها :
How to use Winforms Modern UI
لماذا لاتستخدم الـ(ChildForm)