表格之间的沟通

Nig*_*hil 0 c# vb.net winforms

表单之间的通信可以通过使用.net中的委托等构造函数以多种方式完成,但我的问题是我如何访问从父表单输入子表单的值,或者可以在Windows表单之间进行双向通信.

Uwe*_*eim 7

提供子表单的值作为可以从父表单访问的属性.

例如

using ( var form = new ChildForm() )
{
    form.SomeValue = "abc";
    if ( form.ShowDialog(this) == DialogResult.OK )
    {
        var x = form.SomeValue;
    }
}
Run Code Online (Sandbox Code Playgroud)

在父表单中使用此块可以在子表单中传递值.

在子表单中,该SomeValue属性可以映射到例如TextBox:

public string SomeValue
{
    get { return MyTextBox.Text.Trim(); }
    set { MyTextBox.Text = value; }
}
Run Code Online (Sandbox Code Playgroud)