读书人

winform中怎么把第二个界面的值传回给

发布时间: 2012-10-12 10:17:04 作者: rapoo

winform中如何把第二个界面的值传回给第一个界面?
在A界面有一按键打开B界面,然后从B界面传回一个值。
在B界面代码有(部份):
private void treeView1_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
{
UILevel.AgrMain agrMain = new AgrMain();
if (treeView1.SelectedNode.LastNode == null) //判断是否为末节结点
{
textBox1.Text = e.Node.Text; //获取节点文本
BussinessLevel.ShareClass.GroupID = e.Node.Text.Trim();
this.Close();
}
else
{
textBox1.Text = "";
}
}
在A界面代码如下:
private void AgrMain_EnabledChanged(object sender, EventArgs e)
{
textBox3.Text = BussinessLevel.ShareClass.GroupID;
}
为什么值传不过来?请前辈指点!

特别说明,A界面中嵌套一个自定义控件,textBox3是在该自定义控件中。不知道是不是这里影响?



[解决办法]
两个BussinessLevel是一个实例吗?

简单点就是A打开B的时候,把自己传过去.

伪代码:
B b = new B();
b.a = this;
b.Show();
然后b中就可以调用A的public函数,或者读写public的属性了。
[解决办法]
要想耦合性低点,可以使用Delegate.

参考:
C# WinForm传值
http://blog.csdn.net/renyouprince/article/details/3304906

读书人网 >C#

热点推荐