كيفية استدعاء النموذج عندما يكون هناك 3 أشكال في مشروع نقل البيانات بين أشكال في C# ؟

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

  •  06-07-2019
  •  | 
  •  

سؤال

لدي 3 أشكال في المشروع form1 form2 form3 وكان بسلاسة الآن أنا أكثر في المشروع form4 .أول ثلاثة أشكال المرتبطة بالفعل من خلال ShowDialog().

أنا لا أريد أن أتطرق البرنامج.cs الملف.

كيف يمكنني الاتصال شكل 4 أول ما بدء النموذج ؟ في وقت سابق من شكل 1 كان أول شكل تظهر في المشروع.

أيضا لدي 2 أزرار الراديو في form1 rdb1 و rdb2.في form2 لدي openFileDialog تعلق على زر تحديد .الآن أريد عندما يختار المستخدم rdb1 في form1 ثم تصفية openFileDialog في form2 يجب فتح ملفات فقط ".XML" امتدادا وعندما rdb2 المحددة في Form1 ثم في Form2 فقط ".TXT" يمكن فتح الملفات.

أنا غير قادر على العثور على جملة هذا في التحسس يمكنك الرجاء المساعدة ؟

شكرا مقدما..

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

المحلول

هل يمكن أن تشرح لماذا كنت لا تريد أن تلمس البرنامج الخاص بك.cs الملف ؟ هذا هو بالضبط حيث يمكنك تغيير البدء شكل.

تغيير:

Application.Run(new Form1());

إلى:

Application.Run(new Form4());

ثانيا يمكنك تعيين المرشحات على فتح SaveFileDialog باستخدام تصفية المنشأة.تعيين إلى قيمة مثل هذا:

XML Files|*.xml

أو النص:

Text Files|*.txt

التعديل لإضافة:

للقيام بذلك من شكل آخر:

class Form1 {
  Form2 form2;

  void Form1_Load(object sender, EventArgs e) {
    form2 = new Form2();
  }

  void rdb1_CheckedChanged(object sender, EventArgs e) {
    if (rdb1.Checked) 
      form2.openFileDialog1.Filter = "XML Files|*.xml";
    else
      form2.openFileDialog1.Filter = "Text Files|*.txt";
  }
}

تأكد من أن لديك مجموعة المعدلات ممتلكات openFileDialog1 على Form2 مصمم على "العامة" أو "الداخلية" إلى تسمح إمكانية الوصول إليها من خارج الطبقة نفسها.

نصائح أخرى

لديك للمس البرنامج.cs.حيث ان النموذج الأولي هو إنشاء وتشغيل.

إنشاء جديد winforms المشروع وفتح البرنامج.cs.يمكنك أن ترى أين التطبيق.تشغيل يسمى مع مثيل نموذج بدء التشغيل.هذا ما عليك القيام به.

لا يكون خائفا.كل شيء سيكون على ما يرام.


ردا على تعليق:

في الحدث Form1_Load أطلقت داخل Form1 قبل Form1.يجب أن تعود المكالمة سلسلة تجد فيها Form1 مثيل و تمريرها إلى التطبيق.تشغيل.و ذلك في البرنامج.cs.

تفعل ذلك.ثم انتقل الحصول على نسخة من CLR عن طريق C#.لن تندم على ذلك (طالما كنت تخطي أول زوجين الفصول!)

كيف يمكنني الاتصال شكل 4 أول ما بدء النموذج ؟

أنا لا أريد أن أتطرق البرنامج.cs الملف.

لماذا لا تريد أن تلمس البرنامج.cs?شكل سبيل المثال تنتقل إلى التطبيق.تشغيل(..) يحدد بدء تشغيل النموذج.

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