C# 是否将值发送到另一个打开表单中的文本框?
我有C# 是否将值发送到另一个打开表单中的文本框?,c#,winforms,C#,Winforms,我有Winform应用程序 有两个表单1的名称树2的名称AddRegion,其中有3个控件公共修饰符 我正在将值从树发送到AddRegion控件。它工作正常,但打开新的AddRegion 如何以打开的形式发送值 // this is button cick in Tree Definitions.AddRegion addreg = new Definitions.AddRegion(); addreg .txt_accno.Text ="1"; addreg .txt_acconame.
Winform
应用程序
有两个表单1的名称树
2的名称AddRegion
,其中有3个控件公共修饰符
我正在将值从树发送到AddRegion控件。它工作正常,但打开新的AddRegion
如何以打开的形式发送值
// this is button cick in Tree
Definitions.AddRegion addreg = new Definitions.AddRegion();
addreg .txt_accno.Text ="1";
addreg .txt_acconame.Text = "2";
addreg.lbl_ParentID.Text ="3";
addreg.ShowInTaskbar = false;
// addreg.Show(this);
this.Hide();
将Definitions.AddRegion表单保留在methode之外的变量中 因此,它将是全球性的、可访问的,如:
Definitions.AddRegion addreg = new Definitions.AddRegion();
void button1_Click(object sender, EventArgs eventArgs)
{
addreg .txt_accno.Text ="1";
addreg .txt_acconame.Text = "2";
addreg.lbl_ParentID.Text ="3";
addreg.ShowInTaskbar = false;
this.Hide();
}
试试这个方法,
for (int i = 0; i < Application.OpenForms.Count; i++)
{
if (Application.OpenForms[i].Name == "YourFormName")
{
YourForm form = (YourForm)Application.OpenForms[i];
///Assign the value here
///form.txt_accno.Text = "1"; //etc.
}
}
这个怎么样
YourForm form = (YourForm)Application.OpenForms["formName"];
通过使用一些事件或使用按钮并单击Event在“AddRegion”中获取数据您可以在form2的构造函数中发送对form1 one的引用,并使您要更新的控件成为公共控件。相同!打开新实例这还不错,实现了我的目标,但我在31个表单中使用了此树(搜索):您可以使用LINQ查找打开的表单。我已经更新了我的答案,请看一看。谢谢你们的努力,我想更简单的方式,我会标记为答案已经工作!
YourForm form = (YourForm)Application.OpenForms["formName"];