منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[WPF حتى الاحتراف] {3.6} - اداة الـ DockPanel - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (https://vb4arb.com/vb)
+-- قسم : قسم لغات البرمجة الاخرى (https://vb4arb.com/vb/forumdisplay.php?fid=4)
+--- قسم : قسم البرمجة بتقنية WPF (https://vb4arb.com/vb/forumdisplay.php?fid=86)
+---- قسم : قسم دورات تقنية WPF (https://vb4arb.com/vb/forumdisplay.php?fid=87)
+---- الموضوع : [WPF حتى الاحتراف] {3.6} - اداة الـ DockPanel (/showthread.php?tid=3350)



[WPF حتى الاحتراف] {3.6} - اداة الـ DockPanel - الشاكي لله - 27-06-14

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











الـDockPanel



هي اداة من ادوات الLayout ، تستخدم لترتيب العناصر على حسب جهة محددة :-



[صورة مرفقة: v2_dockpanel.png]




كود XAML المسؤول عن تكوين العناصر السابقة :

PHP كود :
<DockPanel LastChildFill="True">
 
   <Button Content="Dock=Top" DockPanel.Dock="Top"/>
 
   <Button Content="Dock=Bottom" DockPanel.Dock="Bottom"/>
 
   <Button Content="Dock=Left"/>
 
   <Button Content="Dock=Right" DockPanel.Dock="Right"/>
 
   <Button Content="LastChildFill=True"/>
</
DockPanel













خواص مهمة







خاصية DockPanel.Dock



هي خاصية تُعين من العنصر الذي في داخل الDockPanel ، من خلال هذه الخاصية تحدد الجهة التي تريد وضع العنصر فيها ، حيث تحدد العنصر المراد تغيير جهته وتذهب الى صندوق الخصائص وتغير قيمة خاصية DockPanel.Dock


وهي خاصية تعتبر AttachedProperty لانها خاصية تابعة للDockPanel لكن تم "الحاقها" للButton ، سنذكر تفاصيلها في موضوع اخر .





--------------------






خاصية LastChildFill



على عكس الخاصية السابقة فهذه الخاصية تعين للDockPanel نفسه ، ومن اسمها يتضح انها تجعل اخر عنصر من ابنائها  يملأ المساحة المتبقية في DockPanel :


[صورة مرفقة: jUNCoSn.png]
[صورة مرفقة: xE1iYVf.png]













Multiple elements on one side



لعلك قد تحتاج لإضافة عنصرين في نفس الجهة ، فذلك ممكن ايضا ..

ويتم ذلك بكل سهولة بتعيين قيمة خاصية DockPanel.Dock لكل من العنصرين بنفس الاتجاه

[صورة مرفقة: v2_multipledock.png]





كود Xaml :

PHP كود :
<DockPanel LastChildFill="True">
 
   <Button Content="Dock=Left"/>
 
   <Button Content="Dock=Left"/>
 
   <Button Content="Dock=Top" DockPanel.Dock="Top"/>
 
   <Button Content="Dock=Bottom" DockPanel.Dock="Bottom"/>
 
   <Button Content="Dock=Right" DockPanel.Dock="Right"/>
 
   <Button Content="LastChildFill=True"/>
</
DockPanel














برامج حقيقية تستعمل الDockPanel



الDockpanel عملي للغاية ويستعمل في اكبر البرامج وخاصة برامج الStudio  
لعلكم رايتم مثل هذه الحالة في الفيجوال ستوديو :-


[صورة مرفقة: ScrShot1.gif]






لكن في الحقيقة الDockpanel القياسية لايمكنها عمل مثل الظاهر في الصورة ، ليس صعبا لكن يتطلب منك بعض الوقت لتعديلها واضافة احداث وماشابه ..


لذلك بعض المبرمجين المستقلين قاموا ببناء مكتبات تمكنك من القيام بمثل وظيفة الشكل اعلاه :-














المهمة


المهمة المطلوبة منكم اخواني هي تنفيذ النموذج التالي :-

[صورة مرفقة: 20130105230547.png]






انتهى



RE: [WPF حتى الاحتراف] {3.6} - اداة الـ DockPanel - salfig - 27-06-14

وعليكم السلام

في البداية احب اشكرك على الدروس التي تقدمها

لقد انتهيت من انجاز المهمة


RE: [WPF حتى الاحتراف] {3.6} - اداة الـ DockPanel - الشاكي لله - 27-06-14

(27-06-14, 06:38 PM)salfig كتب : وعليكم السلام

في البداية احب اشكرك على الدروس التي تقدمها

لقد انتهيت من انجاز المهمة

100%


RE: [WPF حتى الاحتراف] {3.6} - اداة الـ DockPanel - Japan - 27-06-14

السلام عليكم
اشكركم جزيل الشكر يا استاذ على هذه الدروس الاكثر من رائعة
الملف في المرفقات



RE: [WPF حتى الاحتراف] {3.6} - اداة الـ DockPanel - عبد الله - 29-06-14

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

واجهت مشكلة في ترتيب بعض الأزرار ولكني فطنت لما كنت تنبه عنه وهو التعديل من خلال شفرة Xaml وفعلاً تم إعادة ترتيب الأشكال لتظهر كما هي في واجب الدرس.


   


RE: [WPF حتى الاحتراف] {3.6} - اداة الـ DockPanel - hoob computer - 29-06-14

ممتعة الدورة جداً ...
جزاك الله خيراً

السلام عليكم