PDA

View Full Version : گفتگو: مرتبط کردن فرمان منو با فرمان تولبار



JaguarXF
جمعه 21 فروردین 1388, 06:06 صبح
این رو در بخش گفتگوی فنی مطرح کردم ولی ظاهرا تایید نشده.
چه راه حل جدیدی برای این مطلب اطلاع دارید؟


In Windows Forms applications, similar commands, such as those in a menu and their counterparts on a toolbar, are not automatically related. They don't fire the same event or run the same handler routine.
This article describes the principles of command management and why it's important to have functional commands that are not exclusive to any one UI element. In order to provide an MFC-like command management infrastructure

با توجه به اینکه هفت سال از نوشته شدن این مطلب گزشته و خیلی امکانات جدیدی به دات نت اضافه شده است.

اگر منویی غیر فعال شد چطور؟ تولبار متناظرش چطور غیر فعال بشه؟
http://msdn.microsoft.com/en-us/magazine/cc188928.aspx

JaguarXF
جمعه 04 اردیبهشت 1388, 19:34 عصر
کسی فکری نکرد؟

zahra111
جمعه 04 اردیبهشت 1388, 22:24 عصر
منظورتون از مرتبط کردن اینه که کدی که یک منو اجرا می کنه با کدی که ابزار مربوطه اجرا می کنه یکی باشه؟ اگه منظورتون اینه، باید تو لیست رویدادها برای رویداد click ابزار رویداد click منو رو از لیست کشویی باز کرد.

JaguarXF
سه شنبه 08 اردیبهشت 1388, 05:37 صبح
تشکر. ولی هنوز خیلی ناقصه:
به روش شما فقط کد اجرایی تولبار و منو یکسان میشه. بسیار هم خوب.
ولی فقط که این نیست! اگر منویی غیر فعال شد چطور؟ تولبار متناظرش چطور غیر فعال بشه؟ تول تیپ هایشان چطور یکسان باشند ؟ و مواردی از این قبیل . کلا تغییر استیت رو مد نظر بگیرید .

salehbagheri
سه شنبه 08 اردیبهشت 1388, 13:02 عصر
براي منوها معمولا بايد يه رويه خاص پيش بگيريد!
مديريت منوها و تولبارهاي متناظر با اون كمي سخته!

بهترين راه اين هست كه در لايه BLL خودتون، پروپرتي يا خواصي تعريف كنيد كه بتونيد منوها و تولبارهاي متناظر با اون رو به اون ويژگي بايند كنيد!

مثلاً من "منوي ذخيره" رو مثال ميزنم:


Public Class Save
Public Property Tooltip() As String
Get
Return "You Can Save Your Files By This Item"
EndGet
Set(Value As String)
EndSet
End Property
Public Property IconImage() As Image
'....
End Property
Public Property Text() As String
Get
Return "Save"
EndGet
End Property
....
....
End Class



فقط كافيه يه ويژگي به نام Enable از نوع Bool تعريف كنيد و ... بقيه كار رو هم كه بلديد!

Mahdi.Kiani
جمعه 02 مرداد 1388, 10:24 صبح
سلام
این مثال (http://msdn.microsoft.com/en-us/library/ms181006.aspx) را ببینید.(به نکته امنیتی آن هم توجه کنید)

JaguarXF
شنبه 03 مرداد 1388, 06:13 صبح
برای این سوال MVC رو استفاده کردم ولی این هم قسمت زیادی همونی هست که دنبالش بوده ام. حتما بررسیش میکنم.
بسیار ممنون.