c# windows Form 间的通讯 点击form1的button1按钮生成一个form2,我点击form2上的button1按钮,使form1上面原本不显示的lable显示出来。怎么做??这两个窗口是不是需要什么父子关系?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用静态变量可以实现如果有一个Frm.cs类,其有一个静态变量form FrmHandl;form1 frm1 = new form1()frm1.show()Frm.FrmHandl = frm1;当form2中按钮调用时可以设置利用Frm.FrmHandl找到form1中的label进行更改 不是什么父子关系实现类似的方法很多,用得最多的方法就是用委托请参照:http://zhenyulu.cnblogs.com/articles/34044.html public class Form1 : Form{ ... private void Button1_Click(object sender,EventArgs e) { Form2 f2 = new Form2(); f2.SetLabel(this.label1); f2.Show(); } ...}public class Form2 : Form{ ... private Label lb; public void SetLabel(Label lb) { this.lb = lb; } ... private void Button1_Click(object sender,EventArgs e) { if(this.lb != null)this.lb.Visible = true; }} 比较简单的方法:Form1中:把Label设置成Public; Form2 f2 = new Form2(this); f2.Show();Form2中: Form1 f1; public Form2(Form1 form1) { InitializeComponent(); f1 = form1; } private void button1_Click(object sender, EventArgs e) { f1.button1.Visible = false; } onekey(星星离我还很远) 方法正解已实现过 http://blog.csdn.net/duncansun/archive/2006/01/13/577882.aspx 窗体间的数据交互的继中方法http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx 关于使用.net实现屏幕取词 不解C#中的SQL语句 VS2008编写的项目怎么在VS2005中打开 Win7选择目录对话框如何设置默认目录? 容错机制的设计问题 多线程中关闭窗口报错的问题 大哥们..帮帮忙..我的GridView用不太好 如何求每一行DataTable中的行相加的值,每一列列相加的值。 c# winform的colorDialog如何获取选中的颜色值,最好是八位十六进制的数字形式。 菜鸟问题?(它困惑我好久了) dataGrid显示的问题~~高手们快来看看啊 用C#做一个flash播放器,遇到了难题,快想晕了
如果有一个Frm.cs类,其有一个静态变量form FrmHandl;
form1 frm1 = new form1()
frm1.show()
Frm.FrmHandl = frm1;当form2中按钮调用时
可以设置利用Frm.FrmHandl找到form1中的label进行更改
实现类似的方法很多,用得最多的方法就是用委托
请参照:
http://zhenyulu.cnblogs.com/articles/34044.html
{
...
private void Button1_Click(object sender,EventArgs e)
{
Form2 f2 = new Form2();
f2.SetLabel(this.label1);
f2.Show();
}
...
}
public class Form2 : Form
{
...
private Label lb;
public void SetLabel(Label lb)
{
this.lb = lb;
}
... private void Button1_Click(object sender,EventArgs e)
{
if(this.lb != null)this.lb.Visible = true;
}
}
把Label设置成Public;
Form2 f2 = new Form2(this);
f2.Show();Form2中:
Form1 f1;
public Form2(Form1 form1)
{
InitializeComponent();
f1 = form1;
} private void button1_Click(object sender, EventArgs e)
{
f1.button1.Visible = false;
}
已实现过
http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx