كيف أتحكم في ترتيب تنفيذ الـEvent Handlers ؟ - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183) +--- الموضوع : كيف أتحكم في ترتيب تنفيذ الـEvent Handlers ؟ (/showthread.php?tid=7191) |
كيف أتحكم في ترتيب تنفيذ الـEvent Handlers ؟ - Aly El-Haddad - 30-11-12 السلام عليكم و رحمة الله و بركاته،
[SIZE=5][SIZE=4]كيف أت[SIZE=4]حكم في ترتيب الـEvent Handlers ؟أنا ع[SIZE=4]ندي [SIZE=4]في [SIZE=4]المشروع صورة شبيهة بتلك:[/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE] كود : [SIZE=4]Public Class Class1 [/SIZE][SIZE=4]في الكود أعلاه، [SIZE=4]أريد تفعيل [SIZE=4]الـHandler الذي به الرسالة: "Recently added Handler" قبل الـHandler الذي به الرسالة: "Default Protected Handler"[/SIZE][/SIZE] (مع مراعاة عدم تغيير كود Class1) [/SIZE] كيف أتحكم في ترتيب تنفيذ الـEvent Handlers ؟ - Islam Ibrahim - 01-12-12 تحتاج إلى إضافة حدث إضافي إلى Class1 وليكن BeforeEvent1 عندها يمكنك إطلاقه قبل الحدث Event1 وبالتالي تشغيل جميع Handlers المطلوبة قبل تنفيذ الحدث Event1 كود : Public Sub RaiseEvent1() غير هذه الطريقة لايمكن تنفيذ ما طلبت إذ أنك قد كسرت تمامًا الهدف الرئيسي من Events. كيف أتحكم في ترتيب تنفيذ الـEvent Handlers ؟ - Aly El-Haddad - 01-12-12 Islam Ibrahim كتب :تحتاج إلى إضافة حدث إضافي إلى Class1 وليكن BeforeEvent1 عندها يمكنك إطلاقه قبل الحدث Event1 وبالتالي تشغيل جميع Handlers المطلوبة قبل تنفيذ الحدث Event1 شكراً للإفادة أخي، لكن بحكم أنك من خبراء Microsoft فهل توجد أي طريقة للتحايل على هذا و التحكم في ترتيب الـHandlers ؟ (بدون التغيير في Class1) كيف أتحكم في ترتيب تنفيذ الـEvent Handlers ؟ - Islam Ibrahim - 01-12-12 هناك طريقة وحيدة وهي كتابة فئة جديدة موروثة من الفئة Class1 وعمل Hiding (أو Shadowing) للإجراء OnEvent1 بحيث يتم تغيير ترتيب EventHandlers بشكل ما, لكني لا أفضل هذه الطريقة فهي ستعقد الأمر أكثر. هل Class1 قابل للتعديل (من كتابتك) أم مضمن في مكتبة خارجية, وإن كان كذلك اعرضه لنرى فقد يكون به إجراءات أخرى مفيدة للغرض الذي تسعى لتحقيقه. كيف أتحكم في ترتيب تنفيذ الـEvent Handlers ؟ - Aly El-Haddad - 01-12-12 Islam Ibrahim كتب :هناك طريقة وحيدة وهي كتابة فئة جديدة موروثة من الفئة Class1 وعمل Hiding (أو Shadowing) للإجراء OnEvent1 بحيث يتم تغيير ترتيب EventHandlers بشكل ما, لكني لا أفضل هذه الطريقة فهي ستعقد الأمر أكثر. أولاً: شكراً لك أخي فهذه تعتبر الطريقة الأمثل ثانياً للمعلومة: Class1 هو System.Windows.Forms.Label ثالثاً: أحب أعتذر عن التأخير في الرد |