+1 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)
ویرایش شده قبل توسط

با سلام

من قصد دارم یک متد که در فرم form2 (کلاس form2) قرار دارد را در form1 (کلاس form1) صدا بزنم

ولی بعد از اینکه صداش میزنم اون متد اجرا نمیشه

در زیر میتونین کدهای مربوط به form1 رو ببینید:

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        public void change_lbl()
        {
            lbl_form1.Text = "Its Done !";
        }

        private void btn_gofrm2_Click(object sender, EventArgs e)
        {
            Form2 frm2 = new Form2();
            frm2.Show();
        }

        private void btn_form1_Click(object sender, EventArgs e)
        {
            change_lbl();
        }

    }

 

کدهای مربوط به form2

 

    public partial class Form2 : Form
    {
        Form1 frm1 = new Form1();
        public Form2()
        {
            InitializeComponent();
        }

        private void btn_form2_Click(object sender, EventArgs e)
        {
            frm1.change_lbl();
            this.Close();
        }
    }

 

ممنون که به مشکلات دیگران اهمیت میدهید

1 پاسخ

+1 امتیاز
قبل توسط (40 امتیاز)
سلام

در این مورد می تونید به جای صدا زدن متد خاصیت Modifier ابجکت lbl_form1 رو public کنید و براحتی در فرم 2 مقدار Text اون رو تغییر بدید.بعدش بهتره همیشه قبل از show کردن فرم خاصیت owner اون رو به فرم قبلی بدید.

سوالات مشابه

+1 امتیاز
2 پاسخ 3.3هزار بازدید
سوال شده 8 سال قبل در برنامه نویسی توسط Ali9978 (5 امتیاز)
+1 امتیاز
1 پاسخ 493 بازدید
0 امتیاز
0 پاسخ 351 بازدید
+1 امتیاز
0 پاسخ 276 بازدید
0 امتیاز
0 پاسخ 1.2هزار بازدید
0 امتیاز
0 پاسخ 450 بازدید
سوال شده 9 سال قبل در برنامه نویسی توسط morteza (20 امتیاز)
0 امتیاز
1 پاسخ 503 بازدید
0 امتیاز
0 پاسخ 452 بازدید
سوال شده 11 سال قبل در برنامه نویسی توسط ashkan (49 امتیاز)
0 امتیاز
0 پاسخ 1.5هزار بازدید
سوال شده 11 سال قبل در برنامه نویسی توسط ashkan (49 امتیاز)
...