مشاكل مع أو أفضل الممارسات لاجتياز البيانات مرة أخرى من خلال eventArgs؟

StackOverflow https://stackoverflow.com/questions/1841801

سؤال

لدي فئة غير واجهة المستخدم الرسومية التي تنشئ الأحداث فيما يتعلق بما تفعله (والتي بدورها تستخدمها نموذج لعرضه للمستخدم التقدم).

واحدة من الأحداث هي AboutToDoSomethingDestructiveEvent. وبعد الآن نريد أن يكون لديك النموذج عرض مربع حوار للمستخدم متى AboutToDoSomethingDestructiveEvent يثير، يسألهم إذا كانوا يريدون SomethingDestructive يحدث. إذا حددوا NO، فسنضع قيمة على العميل EventArgs وسوف تقرأ النموذج الأصلي هذه القيمة ثم تخطي القيام به SomethingDestructive.

هل هذا الاستخدام السليم للأحداث و EventArgsب هل هناك مشاكل مع هذا النهج؟ هل هناك أفضل ممارسات للقيام بهذا النوع من الأشياء؟

هل كانت مفيدة؟

المحلول

النهج جيد جدا هناك حتى فئة في إطار .NET لهذا: canceleventargs.

نصائح أخرى

الطريقة التي تفكر بها هي الطريقة الصحيحة للقيام بذلك. الحدث Console.Cancelkeypress هو في الأساس نفس الشيء.

console.cancelkeypress.

هذا نهج مناسب، طالما أن لديك EventArgs الخاص بك، والتي ترثت من system.eventargs. من الشائع جدا، وأفضل مثال على ما يمكنني التفكير فيه في Postsharp مع Flowbehavior.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top