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

سؤال

بدأه mosa alharbi في 25 يونيو 2011 · 4 رد · 551 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

هذا مثال ارسلته لكم فيه MDI يعرض فيها اثنين form عن طريق الظغط على بتن وانا اللي ابغاه:

1-الوصول الى اي فورم عن طريق الضط على ال node الchild لtreeview يعني ودي اخليها رابط عند الظغط على node1 يعرض الform2 وعند الظغط على node2 يعرض الform3

لاني لما اظغط دبل كليك على التري فيو يعطيني الافينت حق الاداة كاملة وانا اريد الحدث حق الشيلد نود

2- عندي form2 داخل MDI اللي ابغاه اذا قمت بعرض اي فور يقوم يقفل الفورم المعروض قبلة ....

اتمنى اني اوضحت الصوره...........ودمتم

WindowsApplication1.rar

#2

السلام عليكم و رحمة الله و بركاته

في مثالك الذي ارفقته

اقتباس
-الوصول الى اي فورم عن طريق الضط على ال node الchild لtreeview يعني ودي اخليها رابط عند الظغط على node1 يعرض الform2 وعند الظغط على node2 يعرض الform3

لاني لما اظغط دبل كليك على التري فيو يعطيني الافينت حق الاداة كاملة وانا اريد الحدث حق الشيلد نود

في الحدث AfterSelect قم بوضع هذا الكود


{
foreach (var item in MdiChildren)
{
item.Close();
}
Form2 aa = new Form2();
aa.MdiParent = this;
aa.Show();
label1.Text = "اضافة موظفين";
}
else if (e.Node.Name == "Node2")
{
foreach (var item in MdiChildren)
{
item.Close();
}
Form3 ss = new Form3();
ss.MdiParent = this;
ss.Show();
}
if (e.Node.Name == "Node1")

فهذا الكود يحضر اسم النود الذي اختاره المستخدم اذا كانت Node1 يقوم بفتح Form2 و اذا كانت ما اختاره المستخدم Node2 يقوم بفتح Form3

اقتباس
- عندي form2 داخل MDI اللي ابغاه اذا قمت بعرض اي فور يقوم يقفل الفورم المعروض قبلة ....

كما لاحظت في الكود السابق فقط استخدمت Loop يقوم بغلق اي شاشة مفتوحة قبله


{
item.Close();
}
foreach (var item in MdiChildren)

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

تقبل خالص تحياتي

#3

يطيك العافية اخوي....

لكن في مشكلة هنا..

foreach (var item in MdiChildren)

{

item.Close();

}

المشكلة يعطيني هذا الخطاء:

The type or namespace name 'var' could not be found (are you missing a using directive or an assembly reference?)

هذا الكود يفتحلي الفورم مره وحده واذا ظغط على node مره ثانية مايعرض الفورم مرة ثانيه

وياريت ياخوي تشرحلي هالنقطة عشان افهمها:

#4

السلام عليكم و رحمة الله و بركاته

ربما لتعودي على وجود هذا النوع الذي يجعل ما يحجز فيه يأخذ خزاص ما يحمله

و الذي رأيته كان أفضل منه dynamic الذي ظهر بFramework 4

ربما في الاصدار الذي تستخدمه انت لم يظهر بعد var و بذلك استبدله بForm فجميع الشاشة اساسها Form

ليكن كالتالي

foreach (Form item in MdiChildren)
            {
                item.Close();
            }

و قم بتبديل نفس الأسطر في الالسطور الأخري ليكون كالتالي

if (e.Node.Name == "Node1")
            {
                foreach (var item in MdiChildren)
                {
                    item.Close();
                }
                Form2 aa = new Form2();
                aa.MdiParent = this;
                aa.Show();
                label1.Text = "اضافة موظفين";
            }
            else if (e.Node.Name == "Node2")
            {
                foreach (var item in MdiChildren)
                {
                    item.Close();
                }
                Form3 ss = new Form3();
                ss.MdiParent = this;
                ss.Show();
            }

تم تعديل هذه المشاركة بواسطة wisamsalah في 26 يونيو 2011 في 02:45

#5

الف شكر اخوي وسام

كل شي اوكي والله لايحرمك اجر هالمعلومة ومنكم نستفيد اكثر باذن الله

تقبل خالص تحيات

ي

تم تعديل هذه المشاركة بواسطة mosa alharbi في 26 يونيو 2011 في 09:02

1

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