+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 پاسخ 500 بازدید
0 امتیاز
0 پاسخ 356 بازدید
+1 امتیاز
0 پاسخ 281 بازدید
0 امتیاز
0 پاسخ 1.2هزار بازدید
0 امتیاز
0 پاسخ 455 بازدید
سوال شده 9 سال قبل در برنامه نویسی توسط morteza (20 امتیاز)
0 امتیاز
1 پاسخ 509 بازدید
0 امتیاز
0 پاسخ 459 بازدید
سوال شده 11 سال قبل در برنامه نویسی توسط ashkan (49 امتیاز)
0 امتیاز
0 پاسخ 1.6هزار بازدید
سوال شده 11 سال قبل در برنامه نویسی توسط ashkan (49 امتیاز)
...