首页 > 解决方案 > 关闭表单后如何更改标签

问题描述

当我启动应用程序 form1 labelStatus = "Can't Edit" 并单击 btnedit form2 后打开并且 labelStatus = "Editable";但是在我通过窗口上的按钮关闭 form2 后它不会改变

再次将 labelStatus 恢复为“无法编辑”

表格1

public static string txt;
private void btnEdit_Click(object sender, EventArgs e)
        {
           
            editForm edit= new editForm();
            editForm.Show();
            labelStatus.Text = "";

        }

在 form1 我应该把 labelStatus.Text=txt;

表格2

private void Form2_FormClosed(object sender, FormClosedEventArgs e)
        {
           
            Form1.txt = "Can't Edit";
            
        }

标签: c#winforms

解决方案


应用程序Form1中按Form1名称查找OpenForms

使用以下代码

private void Form2_FormClosed(object sender, FormClosedEventArgs e)
{ 
    var form1 = Application.OpenForms.OfType<Form1>().Where(x => x.Name == "formName").FirstOrDefault();
    form1.labelStatus.Text = "Can't Edit";
}

推荐阅读