تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
طريقه بديلة لاستعمل usercontrol في ال panel ?
#1
السلام عليكم جميعا 

عندي مشكلة صغيرة و اتمنا ان اجد لها حل هنا و امل ان تساعدوني شباب

انا اقوم بعمل برنامج و اريد ان استخدم اكثر من واجهة في نفس ال form

فقد صنعت قائمة جانبيه في الفورم الرائيسي 


لذلك انا اقوم بعمل usercontrol و اضيف اليها جميع ما احتاج من مربعات فارغه و كبسات ...
و اضع الكود الازم . من ثم اقوم بوضع panel في ال form الرائيسي و اقوم بسحب usercontrol الى ال panel واقوم بالتحكم باظهار و اخفاء ال panels

مشكلتي هي انه يحدث معي مشاكل كثيرة منها ان ال form لا يظهر و واواجة مشاكل بال design او يقوم ال visual studio بالخروج ويعمل crash 

سؤالي هو هل يوجد طريقه بديلة لمل اقوم به ؟؟
لاني لا افضل وضع كل الادوات و كل الكود في نفس الفورم فيصعب التعديل على ال design و الكود ايضا 
لان ال panels سيغطون بعضهم البعض 
اتمنا اني قمت بالشرح الكافي

وشكرا
Usercontrol
الرد }}}}
تم الشكر بواسطة: سعود
#2
غالبا انت لديك مشكلة في الكود الخاص بهذا userControl و هذا ما يؤدي الي Crash
ايضا كيف نجد لك شئ بديل بدون أن نري تصميم هذا الكونترول أو شكله
الرد }}}}
تم الشكر بواسطة: سعود
#3
(10-09-16, 04:56 AM)silverlight كتب : غالبا انت لديك مشكلة في الكود الخاص بهذا userControl و هذا ما يؤدي الي Crash
ايضا كيف نجد لك شئ بديل بدون أن نري تصميم هذا الكونترول أو شكله

لقد قمت بتحديث الموضوع صديقي القي نظرة
اما بالنسبة للكود فهو طويل  هل اقوم باظافتة كمرفق ؟
وشكرا
الرد }}}}
تم الشكر بواسطة: سعود
#4
لا تضف الusercontrol الى ال panel في وقت التصميم
انا استخدم طريقة مشابهة لطريقتك وكتبت method لاضافة usercontrol الى panel عند الحاجة
يعني تحتاج الى بانل واحد في الفورم هو من يستقبل usercontrols
لا تنسى dispose للمحتويات الاولى قبل ارفاق محتويات جديدة
الرد }}}}
تم الشكر بواسطة: سعود
#5
(10-09-16, 04:24 PM)محمد كريّم كتب : لا تضف الusercontrol الى ال panel في وقت التصميم
انا استخدم طريقة مشابهة لطريقتك وكتبت method لاضافة usercontrol الى panel عند الحاجة
يعني تحتاج الى بانل واحد في الفورم هو من يستقبل usercontrols
لا تنسى dispose للمحتويات الاولى قبل ارفاق محتويات جديدة

شكرا للرد صديقي 
ما هي المثود الخاصه لاستدعاء ال usercontrol ?
الرد }}}}
تم الشكر بواسطة: سعود
#6
استخدم الكود مثلا فيه عدد 2 يوزر كونترول
loginme
addme
في زر في الواجهة الرئيسية اكتب
dim uslogin as new loginme
panel.controls.clear
panel.controls.add(uslogin)
وهكذا للبقية

اعجبتني القائمة هل ممكن تقول شلون سويتها
كل مااعرفه في البرمجة تجدونه هنا
الرد }}}}
تم الشكر بواسطة: Rabeea Qbaha
#7
يمكن عمل دالة كهذه (سي شارب)
كود :
       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
الرد }}}}
تم الشكر بواسطة: Rabeea Qbaha
#8
الفورم الرئيسي
PHP كود :
Public Class Form1

    Private Sub Form1_Load
(sender As System.ObjectAs System.EventArgsHandles MyBase.Load
        frms
.Controls.Clear()
 
   End Sub

    Private Sub Button1_Click
(sender As System.ObjectAs System.EventArgsHandles 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.ObjectAs System.EventArgsHandles 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 وحتى باي زر اخر بعد الاستغناء عنه


الملفات المرفقة
.zip   JustCreate.zip (الحجم : 35.07 ك ب / التحميلات : 27)
كل مااعرفه في البرمجة تجدونه هنا
الرد }}}}
تم الشكر بواسطة: Rabeea Qbaha
#9
(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


الملفات المرفقة
.zip   METRO DLL.zip (الحجم : 477.53 ك ب / التحميلات : 27)
الرد }}}}
تم الشكر بواسطة:
#10
لماذا لاتستخدم الـ(ChildForm) 
الرد }}}}
تم الشكر بواسطة: Rabeea Qbaha


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سؤال فى طريقه إعداد ال ToolBox فى VB.net 2015 ابوثامر الحربي 11 168 17-10-17, 07:14 PM
آخر رد: ابوثامر الحربي
  ممكن طريقه طباعه محتويات داتاجريد فيو من خلال الكريستال ريبورت hashish2003 7 276 11-09-17, 10:05 PM
آخر رد: hashish2003
  resize Panel and all controls insid it كرم ابوهشام 1 86 12-08-17, 01:51 AM
آخر رد: boudyonline
  [VB.NET] التعامل مع فورم من نوع UserControl ssayed111 2 140 06-04-17, 12:17 AM
آخر رد: abdualla
  [VB.NET] table layout panel tifagreet 0 100 14-03-17, 02:05 AM
آخر رد: tifagreet
  طريقه ربط السيكول بي البرنامج IBCompany 1 149 24-02-17, 03:07 PM
آخر رد: thevirus
  طلب طريقه عمل الصلاحيات للمستخدمين بقاعده بيانات sql مبرمج أوتار 23 9,015 10-01-17, 01:58 PM
آخر رد: solbi
  [VB.NET] رسم بالحاسوب طريقه رسم نجمه مٌحُمٌدِ الُ ظٌُهرَُه 2 396 25-11-16, 04:34 PM
آخر رد: مٌحُمٌدِ الُ ظٌُهرَُه
  مساعدة في طريقه فكرة عمل جدول sql server Rabeea Qbaha 4 478 08-11-16, 04:55 PM
آخر رد: Rabeea Qbaha
  أرسال قيمة من UserControl الى Form Rabeea Qbaha 5 394 16-10-16, 06:47 PM
آخر رد: Rabeea Qbaha

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم