اضافه کردن SubItem به Itemهای یک ContextMenuStrip در زمان اجرا
من با کد زیر این کار رو دارم می کنم ولی می خوام به اون SubItemها دسترسی پیدا کنم
Item.DropDownItems.Add(subItem);
و این نتکه مهمه که اون SubItem ها در زمان اجرا ساخته می شن!
نقل قول: اضافه کردن SubItem به Itemهای یک ContextMenuStrip در زمان اجرا
سلام،
toolStripMenuItem1.DropDownItems[0].Text = "MOH";
'0' اندیس subitem ای هست که بهش نیاز دارید.
:لبخندساده:
نقل قول: اضافه کردن SubItem به Itemهای یک ContextMenuStrip در زمان اجرا
این که حله مشکلی نیست.
من می خوام که eventهای مربوط به اون Sub itemها رو کنترل کنم نه اینکه Text یا خاصیت دیگه اونارو تغییر بدم!
در کل دنبال عنصر والد هستم.یعنی عنصری که Subitemها رو نگه می دارد
نقل قول: اضافه کردن SubItem به Itemهای یک ContextMenuStrip در زمان اجرا
خیلی جالبه که نشه / بشه Eventهای ، زیر منوهای ساخته شده در زمان اجرای یک ContextMenu رو کنترل کرد؟
نقل قول: اضافه کردن SubItem به Itemهای یک ContextMenuStrip در زمان اجرا
فقط واسه رویداد کلیک:
contextMenuStrip1.Items.Add("New_SubMenu", null, new EventHandler(MyEventHandler));
واسه بقیه رویدادها:
contextMenuStrip1.Items.Add("New_SubMenu");
contextMenuStrip1.Items[0].Click += new EventHandler(MyEventHandler);
بعدش کافیه متد MyEventHandler رو واسش تعریف کنی و کارهایی رو که میخوای به ازای اون رویداد انجام بشه توی اون متد بنویس
private void MyEventHandler(object sender, EventArgs e)
{
//Do Some Things
}
این مثال برای یک Sub Item بود برای چند SubItem فقط باید 0 رو تغییر بدی و ... متد هر کدوم رو هم جداگانه تعریف کنی.
نقل قول: اضافه کردن SubItem به Itemهای یک ContextMenuStrip در زمان اجرا
فکر می کنم درست متوجه منظور من نشدید!
اول اینکه : SubItemها در زمان اجرا به Itemهای Context Menu اضافه میشن
دوم اینکه : من دنبال اینم که بتونم برای هر SubItem در زمان اجرا Click Event ایجاد کنم و با کلیک کردن روی هر SubItem کاری که لازم هست رو انجام بدم.
امیدوارم منظورم را متوجه شده باشید.
نقل قول: اضافه کردن SubItem به Itemهای یک ContextMenuStrip در زمان اجرا
کدهای بالا دقیقا همین کارو انجام میده!!
دستور اول یه SubItem اضافه میکنه و رویداد کلیک اون رو بهش معرفی میکنه (مستقیم توی تعریف SubItem)
دستور دوم هم همین کار رو انجام میده فرقش در اینه که غیر از رویداد کلیک میشه بقیه رویدادها رو هم معرفی کرد.
دستور سوم هم متد رویداد مورد نظرتون هست.
شاید منظور شما اینه که کدهای رویداد رو هم زمان اجرا بنویسید!!؟؟
نقل قول: اضافه کردن SubItem به Itemهای یک ContextMenuStrip در زمان اجرا
نقل قول:
شاید منظور شما اینه که کدهای رویداد رو هم زمان اجرا بنویسید!!؟؟
آره . چون که SubItem ها در زان اجرا ساخته می شن.
لطفا راهنمایی><<