منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : [WPF حتى الاحتراف] {3.5} - اداة الـ WrapPanel
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته








الـWrapPanel



هي اداة من ادوات الLayout ، وظيفتها نفس الـ Stackpanel بالضبط ، الا انها تحتوي على ميزة اضافية وهي : عندما لاتتوفر مساحات اضافية في الـPanel ، قم بالنزول الى سطر جديد.





هذا يعني انها Stackpanel لكن توفر لك ميزة النزول الى سطر جديد عندما لايكون هناك مساحة اضافية للعنصر ..



قبل





بعد تقليل Window width  صغر ال Width تبع الWrapPanel ايضا ، وادى ذلك الى نزول بعض العناصر الى الاسفل :







احنا قلنا ان الStackPanel لديها طريقتين لترتيب العناصر ، اما Vertical او Horizontal وهذا بالفعل موجود ايضا في الWrapPanel :




















ملاحظة :- تاكد ان Anchor مفعل في كلا الجهتين ، عشان كل ماتكبر الWindow ، يكبر معاه ال WrapPanel :
















امثلة على استخدام الـWrapPanel




طبعا اقوى استخدام للـWrapPanel هو الCalendar





وايضا استخدام قوي اخر هو في واجهات الMetro :














الدرس بسيط كما ترون ، فالذي قام بمشاهدة درس الـ Stackpanel يدرك سهولة وغرض الWrapPanel

ولا توجد هناك خواص اضافية في الWrapPanel ، حيث انها موروثة من الـ Stackpanel بغرض ميزة واحدة فقط ، وهي النزوح الى سطر جديد ، او النزوح الى عمود جديد (في حالة الVertical - لايستعمل كثيرا-) .

يكون النزوح الى سطر جديد عندما لا يكون هناك Width كافي في الWrapPanel .. ويكون النزوح الى عمود جديد عندما لايكون هناك Height كافي في الWrapPanel .


لاتوجد مهمة في هذا الدرس .





انتهى
السلام عليكم
جزاك الله خيرا يا استاذنا القدير
وعليكم السلام ورحمة الله وبركاته

طيب أخي محمد ، لماذا لا تكتفي ميكروسوفت بهذه الأداة والاستغناء عن Stackpanel ؟

يعني هل يوجد حالة أُلزم فيها باستخدام Stackpanel ويكون خيار WrapPanel غير صحيح ؟

وجزاك الله خير.
(25-06-14, 08:57 PM)عبد الله كتب : [ -> ]وعليكم السلام ورحمة الله وبركاته

طيب أخي محمد ، لماذا لا تكتفي ميكروسوفت بهذه الأداة والاستغناء عن Stackpanel ؟

يعني هل يوجد حالة أُلزم فيها باستخدام Stackpanel ويكون خيار WrapPanel غير صحيح ؟

وجزاك الله خير.


نستخدم الStackPanel عندما نحتاج الى صف او عمود واحد لادراج العناصر

لننظر الى حالة الCalander :




في المثال اعلاه توجد 5 صفوف من الButtons .. تخيل انه في هذا المثال قمنا باستخدام الStackpanel بدل WrapPanel ، سنضطر الى وضع 5 من stackpanel الافقية لتغطية كل صف (5 صفوف).


لان stackpanel تضيف العناصر في صف واحد فقط ، ولاتنزل لسطر جديد ابدا ، واضن ان الامثلة السابقة والامثلة الحالية توضح المقصود جيدا


تخيل المثال التالي المعمول بواسطة Stackpanel :




تخيل اننا قمنا بعمله بواسطة WrapPanel ، وقام المستخدم بتقليل الWidth ، سينزل الزر Maybe الى سطر جديد وهذا ابدا غير مقبول ، فافضل شيئ في حالة ازرار الDialog هو الStackPanel


انا عجل ليش اخلي في هالدروس قسم باسم الامثة ، راجعه من جديد في كلا الدرسين وبتعرف الحالات جيدا ، او حتى في صورGoogle اكتب stackpanel wpf مثلا وبتطلع لك صور واجهات تستعمل هذي الادوات



عشان تثبت المعلومة اكثر ، قم بالتطبيق وامبيك تسوي Calander بسيط بواسطة الButtons وباستعمال WrapPanel



موفق اخي الكريم ,,,
مقارنة عند اضافة العناصر للأداتين :




StackPanel






WrapPanel


دورة ممتعة جداً و شرح متعوب عليه ...

جزاك الله خيراً يا أخي محمد.
ربي يوفقك Smile


السلام عليكم
الله يعطيك العافية
دروس رهيبة
إن شاء الله
متابعك درس بدرس Shy