要开始 我正在验证用户是否要清除文本框:
public void CheckSure()
{
Form2 f2 = new Form2();
f2.Visible = true;
}
然后 Form2 打开,我在是和否之间有一个选择,我选择是:
private void YesButton_Click(object sender, EventArgs e)
{
Form1 f1 = new Form1();
this.Hide();
f1.Clear();
}
然后它调用应清除文本框的 Clear 方法:
public void Clear()
{
TextSpace.Text = string.Empty;
}
使用断点,我已经确定它肯定会达到运行该行TextSpace.Text = string.Empty;
但由于某种原因文本框未清除的点?任何帮助将不胜感激。
您正在创建 Form1 的新实例。您需要使用当前实例。
实例化 Form2 时,可以利用 Form.Owner
属性:
var form2 = new Form2();
form2.Owner = this;
然后在 Form2 中,若要访问 Form1,可以调用this.Owner.TextSpace.Clear()