c# - 关闭表单后如何更改标签
问题描述
当我启动应用程序 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";
}
解决方案
在应用程序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";
}
推荐阅读
- powershell-3.0 - 如何根据启动类型对服务进行排序
- c++ - 关于 C++ 的 cin 和 >> 的问题
- python - Altair 中带有标签值的分层或 Facet 条形图
- python - 目标 WSGI 脚本无法作为 Python 模块 Flask 加载
- java - java FXML窗口在启动时没有响应
- javascript - fs.write 在两个 txt 文件中使用 nodejs
- sapui5 - 如何使用 SAPUI5 SDK?
- multithreading - 多线程套接字打开的文件太多
- javascript - v-如果不在模板上工作
- amazon-web-services - AWS Codebuild 未更新 S3 中的工件