عند برمجة تطبيق Windows Forms ، وسوف تحتاج دائما إلى الحصول على المتغيرات من نافذة النموذج الثاني ، مثل نموذج أو منبثقة موجه خيارات البحث.
ومعظم الأدلة هناك اقول لكم ان لديك لفتح النموذج الثاني مع ShowDialog () ، الذي يمنع المستخدم من القيام بأي شيء آخر حتى انهم إغلاق نافذة النموذج الثاني. هذا لن تعمل بشكل جيد جدا للحوار العثور على / استبدال ، على سبيل المثال. كما أنها لا تعمل بشكل جيد جدا لوضع النماذج المخصصة المنبثقة.
طريقة سريعة لتمرير متغيرات بين أشكال يستخدم المندوبين. يمكنك تعيين eventhandler للحدث الختامي للنموذج الثاني ، والتعامل مع الحدث في النموذج الأول. هذا يتيح لك التقاط المتغيرات قبل إطار النموذج الثاني قد أغلقت.
لهذه العملية ، ونحن ذاهبون لنفترض أن لدينا شكلين :
MainForm
OptionsForm
نحن ذاهبون الى تفترض أيضا أن لدينا نوعا من النقر الزر الذي يفتح OptionsForm مع عرض () استدعاء الأسلوب. الآن دعونا نلقي نظرة على السحر :
....... قص.......
OptionsForm theform = OptionsForm جديدة () ؛
theform.Closing + = جديد CancelEventHandler (theform_Closing) ؛
theform.Show();}
الفراغ خاصة theform_Closing (كائن المرسل ، CancelEventArgs ه)
{OptionsForm theform = (OptionsForm) المرسل ؛
/ / الاستيلاء على شكل متغير من الخيارات. وينبغي على شكل خيارات تعيين هذا المتغير قبل أن يغلق ، ويجب أن تكون وضعت متغير عن الجمهور.
سلسلة localvar = theform.thestringvariable ؛}
هذا كل ما في الامر.
Aucun commentaire:
Enregistrer un commentaire