我在一个多文档窗口MDIP_Main中建立一个新的窗口, Form_Upload,并show出来,然后在 Form_Upload中点击一个按钮弹出新的界面,如下
private void Search_IT_TASK(string sql)
{messagebox(sql)}
private void btn_Find_Click(object sender, EventArgs e)
{
Form_SearchrRWD wForm1 = new Form_SearchrRWD(); //建立新窗口,在新窗口中调用本窗口的一些方法
wForm1.ShowDialog(this);
}而在新窗口Form_SearchrRWD中,我点击一按钮,调用 Form_Upload的方法,代码如下:
private void btn_OK_Click(object sender, EventArgs e)
{
string sql = "....";
Form_Upload f = (Form_Upload)this.Owner;//异常,无法将类型为“PMS.MDIP_Main”的对象强制转换为类型“PMS.Form_Upload”。
f.Search_IT_TASK(sql);
}
就是在第二个窗口Form_SearchrRWD中的方法,this.Owner他获取的是多文档母窗口的值了,所以有这个错误,而我想得到的是 Form_Upload的实例,从而调用 Form_Upload.Search_IT_TASK(string sql).
大侠救我!!!!!!!!
private void Search_IT_TASK(string sql)
{messagebox(sql)}
private void btn_Find_Click(object sender, EventArgs e)
{
Form_SearchrRWD wForm1 = new Form_SearchrRWD(); //建立新窗口,在新窗口中调用本窗口的一些方法
wForm1.ShowDialog(this);
}而在新窗口Form_SearchrRWD中,我点击一按钮,调用 Form_Upload的方法,代码如下:
private void btn_OK_Click(object sender, EventArgs e)
{
string sql = "....";
Form_Upload f = (Form_Upload)this.Owner;//异常,无法将类型为“PMS.MDIP_Main”的对象强制转换为类型“PMS.Form_Upload”。
f.Search_IT_TASK(sql);
}
就是在第二个窗口Form_SearchrRWD中的方法,this.Owner他获取的是多文档母窗口的值了,所以有这个错误,而我想得到的是 Form_Upload的实例,从而调用 Form_Upload.Search_IT_TASK(string sql).
大侠救我!!!!!!!!
public delegate void ReceiveHandler(string sql);
public event ReceiveHandler ReceiveOrderOperateCompleted;MDIP_Main中
private void btn_Find_Click(object sender, EventArgs e)
{
Form_SearchrRWD wForm1 = new Form_SearchrRWD(); //建立新窗口,在新窗口中调用本窗口的一些方法
wForm1.ReceiveOperateCompleted += new ReceiveDetailBase.ReceiveHandler(detail_ReceiveOperateCompleted);
wForm1.ShowDialog(); } void detail_ReceiveOperateCompleted(string sql)
{
Search_IT_TASK(sql)
}
private void btn_Find_Click(object sender, EventArgs e)
{
Form_SearchrRWD wForm1 = new Form_SearchrRWD(); //建立新窗口,在新窗口中调用本窗口的一些方法
wForm1.owner= this;
wForm1.ShowDialog();
}
就搞定了