PDA

View Full Version : سوال: مشکل در ارتباط بین دو فرم



bazardeh
یک شنبه 02 آبان 1389, 12:48 عصر
دوستان من می خواهم در برنامه خود (تازه #c رو شروع کردم) بین دو فرم با استفاده از کلاس یا به هر صورتی که می شود محتوای تکس باکس فرم یک را وارد تکس باکس فرم 2 کنم هر کاری کردم نشد کسی می تواند من را کمک کند با تشکر:افسرده:

mahdi87_gh
یک شنبه 02 آبان 1389, 13:07 عصر
در مورد سوالهای این چنینی باور بفرمایین خودم بیش از 10 مرتبه جواب دادم تا حالا:متعجب:
لطفا یه جستجو انجام بدین قبل از پرسیدن سوالتون

ایمان مدائنی
یک شنبه 02 آبان 1389, 13:20 عصر
دوست عزيز ميتوني از hash table استفاده كني
در لينك زير نمونه گذاشتم
http://www.barnamenevis.org/forum/showpost.php?p=1134718&postcount=2

mostafa272
یک شنبه 02 آبان 1389, 19:34 عصر
به نظرم این روش جواب میده:

اول یه سری متغیر از نوع استاتیک تعریف کن.(تو فرم1)

مثلا :

static string str
بعدش یه تابع get ,set تعریف کن
مثلا:

public string sendit
{
get{ return str;}
set { str=Value;}}

خب بعد مثلا محتوای تکست باکس 1 رو بریز تو str:

str=textBox1.Text;

بعد تو فرم2 یه شی از فرم1 بساز و هر جا میخوای از محتویات تکست باکس 1 فرم1 استفاده کنی این تابع رو فراخوانی کن.
مثلا:

From1 c=new Form1();
textBox2.Text=c.sendit;

که مقدار تکست باکس 1 فرم1 رو تو تکست باکس 2 فرم2 میریزه!
همین!

bazardeh
یک شنبه 02 آبان 1389, 21:47 عصر
دوست عزيز جناب آقاي mostafa272 تشكر از كمك شما اما من هر طوري انجام ميدم خطا ميده مخصوصا توي


public string sendit
{
get{ return str;}
set { str=Value;}
}
:متفکر::گریه:
value رو گير ميده

mohamad.alijani
یک شنبه 02 آبان 1389, 22:07 عصر
شما لطف كنيد value رو همين طوري بنويسيد و حرف V رو بزرگ ننويسيد
مشكلتون حل مي شه

mmd2009
دوشنبه 03 آبان 1389, 01:41 صبح
با سلام

دوست عزیز نیازی به کلاس نداریم در چنین حالتی. شما کافیه با استفاده از یک پراپریتی مقدار تکست رو انتقال بدی

برای مثال :

کدهای فرم 1 ) > ( یک دکمه + یک تکست باکس ساخته شود)



private void button1_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.mySTR = this.textBox1.Text;
f2.ShowDialog();
}



کدهای فرم 2 ) >



public string mySTR
{
get;
set;
}

private void Form2_Load(object sender, EventArgs e)
{
this.Text = mySTR;
}


موفق باشید

bazardeh
دوشنبه 03 آبان 1389, 08:32 صبح
دوستان دستتون درد نکنه مشکلم حل شد :قلب::لبخند:

bazardeh
دوشنبه 03 آبان 1389, 08:38 صبح
دوستان و (آقای mostafa272) ممکنه برای من در مورد
public string saleh
{
get { return str; }
set { str = value; }
}
توضیح بدین چه کار میکنه:لبخند:

mostafa272
دوشنبه 03 آبان 1389, 11:44 صبح
معمولا وقتی بخواهیم از نوعی توابع که آرگومان ورودی دریافت نمی کنند و اعمال خاصی هم لازم نیست روی ورودی اعمال شود از این نوع ساختار(get ,set) استفاده می شود که به یک متغیر مقدار میدهد(در set) و آن را برمیگرداند (در get).