+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.2هزار بازدید
سوال شده 8 سال قبل در برنامه نویسی توسط Ali9978 (5 امتیاز)
+1 امتیاز
1 پاسخ 394 بازدید
0 امتیاز
0 پاسخ 275 بازدید
+1 امتیاز
0 پاسخ 246 بازدید
0 امتیاز
0 پاسخ 1.1هزار بازدید
0 امتیاز
0 پاسخ 353 بازدید
سوال شده 9 سال قبل در برنامه نویسی توسط morteza (20 امتیاز)
0 امتیاز
1 پاسخ 422 بازدید
0 امتیاز
0 پاسخ 348 بازدید
سوال شده 10 سال قبل در برنامه نویسی توسط ashkan (49 امتیاز)
0 امتیاز
0 پاسخ 1.4هزار بازدید
سوال شده 10 سال قبل در برنامه نویسی توسط ashkan (49 امتیاز)
...