从子窗体更改父窗体中按钮的颜色

时间:2020-08-01 18:17:29

标签: c# winforms

我需要一些建议 我有两种形式(Form1和Form2)。 Form1有一个打开Form2的按钮,而Form2有一个关闭Form2的按钮。现在,当我单击Form1中的按钮时,其颜色会改变。我希望在关闭Form2之后,将Form1中的按钮更改为默认颜色。我尝试过这种方法,但是它不起作用。

private void btn_exit_menu_Click(object sender, EventArgs e)
{
    Form1 form = Application.OpenForms.OfType<Form1>().FirstOrDefault();
    form.btn_clienti.BackColor = Color.FromArgb(41, 39, 40);
    form.btn_alimente.BackColor = Color.FromArgb(41, 39, 40);
    form.btn_retete.BackColor = Color.FromArgb(41, 39, 40);
    form.btn_meniuri.BackColor = Color.FromArgb(41, 39, 40);

    Application.DoEvents();

    this.Close();
}

1 个答案:

答案 0 :(得分:1)

在创建onclosed ...并更改按钮颜色时,只需添加form2事件处理程序即可。请记住将按钮声明为公开。

From Form.OnClosed Docs

更新

我注意到OnClosed已过时!只需使用OnFormClosed

From Form.OnFormClosed Docs