两个窗体之间传值:
http://www.lzhm.net/read.aspx?ID=57http://www.lzhm.net/Read.aspx?ID=21http://www.csdn.net/Develop/read_article.asp?id=26433
http://www.csdn.net/Develop/read_article.asp?id=26434
http://www.csdn.net/Develop/read_article.asp?id=26436
http://www.lzhm.net/read.aspx?ID=57http://www.lzhm.net/Read.aspx?ID=21http://www.csdn.net/Develop/read_article.asp?id=26433
http://www.csdn.net/Develop/read_article.asp?id=26434
http://www.csdn.net/Develop/read_article.asp?id=26436
解决方案 »
- listview选中某项如何不变蓝色背景和字体颜色
- 突然有些迷茫了,大家没事讨论下。
- 怎样在状态栏中显示突出显示的菜单项的说明信息?
- 多国语言代码页问题
- 静态方法和非方法的区别
- 新手遇到棘手问题,代码编译成DLL文件时提示好几个System.Drawing.Point.x(或y)由于受保护所以禁止访问(在线等答案)
- 部门来了个新手,在执行SQL数据库的时候经常update,delete,有时候执行错了导致灾难性的后果
- C#winform 如何实现主窗体关闭并且要子窗体显示出来。必须关闭主窗体!谢谢!
- 关于水晶报表
- 请问大家,File.Create(file_Name)为何会随机出现Access denied
- 用c#能实现这种功能吗?
- 在MDI窗口中,如何让子窗口调用显示的窗口显示在MDI区中间??
对于第二个问题其实是很简单的,首先这个子窗体要是存在的,然后代码如下:
Form2 for2=new Form2(); //打开
for2.MdiParent=this;
for2.Show();for2.Close(); //关闭
public void delegate sonFormEvent(object sender,eventArgs e);
public class sonForm
{
public sonFormEvent sonevent;
public void Test(eventArgs e)
{
if(sonevent!=null)
sonevent(this,e);
}
}
public class mainForm
{
private sonEventHandler(object sender,eventArgs e)
{
}
//
void formLoad(...)
{
sonForm.sonevent+=new sonFormEvent(this.sonEventHandler);
}
}
在VB里面很爽,只要设置一个属性就可以了。
在C#里,dhz123(飞雪) 的delegate方法是最好的了。
赶紧去学delegate模式吧。perfect。
2、直接From.Close()即可。
public delegate SonFromEvent(object sender,System.eventArgs e)public class sonFrom:System.Windows.Froms.From
{
public event SonFromEvent OnSonFromEvent;
// .......
}public class MainFrom:System.Windows.Froms.From
{
public MainFrom_Load(object sender,System.EventArgs e) //可以是任何事件
{
SonFrom newFrom = new SonFrom();
newFrom.OnSonFromEvent += new SonFromEvent(newFrom_OnSonFromEvent);
}
public void newFrom_OnSonFromEvent(object sender,System.EventArgs e)
{
// .......
}
// .......
}