الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Pass Value From Form1 To Form2

بدأه إبن القيــم في 28 أبريل 2009 · 4 رد · 595 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاتة

ممكن مساعدة في كيفية ارسال قيمة الي فورم نشطة

توضيح بسيط

انا عندي Form1 (Main) تحتوي علي textbox1 and Button1 وعمل الزر هو إظهار الفورم 2

وعندي Form2 تحتوي علي textbox1 and Button1 والاهمية هنا

أريد عند الضغظ علي

Button1 الذي يوجد في Form2

يظهر القيمة الموجودة في Textbox1 >> Form2

داخل Textbox1>> Form1(Main)

مع العلم ان Fomr1 ظاهرة علي الشاشة

أي ان Form1 and Form2 أمامك علي الشاشة

أي لن نحتاج لهذا الكود

Form1 F = new Form1();

F.textbox.text="Value";

F.showDialog();

#2

و عليكم السلام و رحمة الله و بركاته

أولا غير قيمة الخاصية Modifiers للـ textbox1 الموجودة في form1 لتصبح Public

ثم في الـ form2: و داخل الحدث button1_Click() اكتب الكود التالي:

form1 frm = (form1) this.parent;

frm.Textbox1.Text = this.Textbox1.Text;

لاتـُهيئ كفني ما متّ بعد = لم يزل في أضلعي برقٌ و رعدُ


أنــا اسـلامــي ..أنا عزّته = أنا خيل الله نحو النصــر تعــدو


أنــا تــاريـخـي …ألا تعــرفـه = خـالد ينبض في روحــي و سعدُ


لاتـــغرنـك منــي هدأتـــــي = لا يمــوت الثــأر و لــكن يســتعـدُ


لا يغرنـــك نصــلٌ موغـــلٌ = في عروقي …فـأنا منه أحـّـــدُ


إن ما ضُيع في ساح الوغى = في سوى ساحــاتـها لا يــستردُ


#3

أخى بارك الله فيك هذا الكود سوف يظهر خطأ فى وقت التشغيل ,حيث أن فورم 2 ليس لها parent و سيكون المتغير frm خالى (NULL)

لذلك لن تستطيع أن تستخدمه

و أيضا مسالة التغيير من خاص إلى عام (private to public) ليست حلا حيث أن هذا المكون و الذى هو الtextbox أصلا يجب أن يكون private و لا يصل له أحد إلا مالكه

إذن الحل يكون كالأتى :

أولا يتم وضع هذه الproperty لكى تستطيع أن تغير فى قيمة الtextbox بدون الوصول إليه مباشرا

public string S
		{
			set { this.textBox1.Text = value; }
		}

ثانيا :

تحت الزر الأول

Form2 f2 = new Form2();
			f2.Owner = this;
			f2.Show();

و لن يصح أن تستخدم Parent حيث أن هذه ليست MDI

ثانيا فى الزر الذى سوف ينقل الكتابة فى الفورم الجديدة

 Form1 f1 = (Form1)this.Owner;
			f1.S = this.TextBox1.Text;

لا إله إلا الله محمد رسول الله

アッラー以外に神はなし。ムハンマドはアッラーの使徒である

#4

جزاك الله خيرا أخ محمد

لاتـُهيئ كفني ما متّ بعد = لم يزل في أضلعي برقٌ و رعدُ


أنــا اسـلامــي ..أنا عزّته = أنا خيل الله نحو النصــر تعــدو


أنــا تــاريـخـي …ألا تعــرفـه = خـالد ينبض في روحــي و سعدُ


لاتـــغرنـك منــي هدأتـــــي = لا يمــوت الثــأر و لــكن يســتعـدُ


لا يغرنـــك نصــلٌ موغـــلٌ = في عروقي …فـأنا منه أحـّـــدُ


إن ما ضُيع في ساح الوغى = في سوى ساحــاتـها لا يــستردُ


#5

بارك الله فيك وجزاك الله خيرا علي المعلومة القيمة وشكرا جزيلا لك

مواضيع مشابهة