سنتعلم في هذا الدرس كيفيه تغير شكل القوائم ووضع أيقونه بها بالكود
لكي يتم ذلك
أولا: خاصية OwnerDraw
الخاصة OwnerDraw لكل عنصر في القائمة نجعلها تساوى true
خاصية OwnerDraw تعنى أن عنصر في القائمة (menuItem) سيكون مرسوم بالكود
وبالتالى فإن New,Open,Save,Exit MenuItem ستكون خاصية
OwnerDraw= true
بينما File MenuItem ستكون هذه الخاصية تساوى false لأننا لن نرسمه بالكود
ثانيا:الحدث MeasureItem
يحدث عندما تحتاج القائمة معرفه حجم عنصر القائمة قبل ما يتم رسمه
مثلا Open MenuItem وهكذا لباقي العناصر بنفس القيم
private void Open_MeasureItem(object sender, System.Windows.Forms.MeasureItemEventArgs e)
{
e.ItemWidth = 100;
e.ItemHeight = 20;
}نحدد عرض وارتفاع العنصر المراد رسمه
ثلاثا:الحدث DrawItem
وهو الأهم يحدث عندما تكون خاصية OwnerDraw= true لكي يتم رسم القائمة
سوف نعمل داله بسيطة ونسميها Draw_Menu ونستدعيها في حدث DrawItem لكل عنصر في القائمة
Draw_Menu (int number,object sender,System.Windows.Forms.DrawItemEventArgs e,bool icon)