+1 امتیاز

سلام

من دو فرم دارم که در فرم دوم یک باتن ودر فرم اول یک تکست باکس هست. میخواهم با زدن باتن ، مقدار تکست باکس نشان داده شود.

کدهای زیر را نوشته ام: در فرم اول

public string Text1
{
    get
    {
        return this.textBox1.Text;
    }
    set
    {
        this.textBox
1.Text = value;
    }
}

و در فرم دوم:

private void button1_Click(object sender, EventArgs e)
        {
           form1 f1 = new form1();
           MessageBox.Show(f1.Text1);           
        }

مشکل این است که در فرم دوم همواره مقدار اولیه تکست باکس نمایش داده می شود.

یعنی اگر مقدار تکست باکس را تغییر دهم در فرم دوم این مقدار جدید نشان داده نمی شود و همان مقدار اولیه را نشان می دهد. 


پیشاپیش از راهنمایی جنابعالی سپاسگزارم 

بسته شده

1 پاسخ

+2 امتیاز
 
بهترین پاسخ

سلام،

کدهای فرم اول

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

کدهای فرم دوم

private string str;
public string getFromTextBox
{
    get
    {
        return str;
    }
    set
    {
        str = value;
    }
}
        
private void button1_Click(object sender, EventArgs e)
{
    MessageBox.Show(getFromTextBox);
}
البته من در فرم اول یه دکمه واسه نمایش فرم دوم هم گذاشتم. کلیت کار به این صورته که شما باید در فرم دوم یک پراپرتی از نوع رشته تعریف کنید که بتونه پذیرای مقدار ارسال شده از تکس باکس فرم اول باشه. بعد همین پراپرتی رو به راحتی در messagebox نشون بدین
توسط (3,483 امتیاز) 6 13 87
از توضیح کامل شما بسیار متشکرم.

اگر بخواهم دکمه ای را که برای نمایش فرم دوم گذاشته اید، در فرم دیگری قرار دهم چطور؟

توضیح کامل را در سوالی با عنوان فرمهای wizard قرار می دهم.
توسط (131 امتیاز) 3
سوال جدید

2,337 سوال

2,871 پاسخ

3,725 دیدگاه

3,921 کاربر

دسته بندی ها

...