更新另一个表单的列表框?

时间:2018-04-24 22:14:16

标签: c# winforms

当我在“表格2”时,如何更新“表格1”中的列表框?

具体来说,我想要它,以便当用户关闭表单2时,通过编码的按钮或右上方的退出按钮,表单1中的列表框会更新以显示某些值。

我该怎么做呢?我是否正确地假设我必须以某种方式在表单1中公开该控件,以便我可以在表单2中使用它进行编码?

1 个答案:

答案 0 :(得分:0)

我假设您在Form1的某个函数中创建了Form2的新实例。因此,如果您订阅Form2实例的Closed事件,则可以访问Form2的公共字段以更新Form1实例的控件(您可能需要调用)。

未经测试,糟糕,可能是愚蠢的示例代码:

class Form1 : Form
{
    ...
    Form2 form = new Form2();
    void someFunction()
    {
        form.ShowDialog();
        myControl.Text = form.SomeText;
    }
}

class Form2 : Form
{
    ...
    public string SomeText { get; set; }
    void someFunction()
    {
        SomeText = "bla";
    }
}