我想要实现这样的效果:打开F_main窗体->点击F_main里的一个按钮->用该按钮事件打开F_login->再用F_login里的一个按钮事件触发F_main里的public void show_now()方法->打开F_now窗体->点击F_now窗体中的按钮事件,改变F_main里的webbrowser属性值。
已有代码如下(调试时F_main窗体里没有任何变化): F_now窗体:
namespace XXX
{
public partial class F_now : Form
{
public event EventHandler MyEvent; protected virtual void OnEvent(object sender, EventArgs e)
{
if (MyEvent != null)
MyEvent(sender, e);
} public F_now()
{
InitializeComponent();
}
private void btn_s_Click(object sender, EventArgs e)
{
OnEvent (sender, e);
} }
}
F_main窗体:
namespace XXX
{
public partial class F_main : Form
{
public F_main()
{
InitializeComponent();
}
public void show_now() //该方法是显示F_now的地方,是通过其它方式能够调用的(也就是说这儿是可以执行,类似于放到Load事件里的)
{
F_now frm_now = new F_now();
frm_now.MyEvent += new System.EventHandler(this.frmMain_youEvent);
frm_now.Show(this);
}
private void frmMain_youEvent(object sender, EventArgs e)
{
this.wbb_list.Navigate("http://www.sina.com");
}
}
}上面的代码如何在两个窗体间通信则可以很正常的进行,可要实现三窗体间的通信则不能成功,为什么呢????
已有代码如下(调试时F_main窗体里没有任何变化): F_now窗体:
namespace XXX
{
public partial class F_now : Form
{
public event EventHandler MyEvent; protected virtual void OnEvent(object sender, EventArgs e)
{
if (MyEvent != null)
MyEvent(sender, e);
} public F_now()
{
InitializeComponent();
}
private void btn_s_Click(object sender, EventArgs e)
{
OnEvent (sender, e);
} }
}
F_main窗体:
namespace XXX
{
public partial class F_main : Form
{
public F_main()
{
InitializeComponent();
}
public void show_now() //该方法是显示F_now的地方,是通过其它方式能够调用的(也就是说这儿是可以执行,类似于放到Load事件里的)
{
F_now frm_now = new F_now();
frm_now.MyEvent += new System.EventHandler(this.frmMain_youEvent);
frm_now.Show(this);
}
private void frmMain_youEvent(object sender, EventArgs e)
{
this.wbb_list.Navigate("http://www.sina.com");
}
}
}上面的代码如何在两个窗体间通信则可以很正常的进行,可要实现三窗体间的通信则不能成功,为什么呢????
解决方案 »
- 既可以使用SQLSERVER也可以使用MYSQL(100分)
- 用codesmith生成的架构,请问怎么获取自动增加的ID
- 数据库连接字符串怎么以命名管道的方式连接数据库,怎么写啊
- this.Tkehu.Text = myds.Tables[0].Rows[0]["客户名称"].ToString()会出错
- 为什么我界面上的控件总是往下跑
- DataSet怎么这么占内存?
- 家用配置!! 高手帮看看 用于VS2005 于 玩游戏 这样陪可以不? 分一样给哈 ~~~
- 江湖救急,两道汇编题,速度求解答。
- 高兴!!!女儿生日有这么多人恭喜!再散分
- 又一个送分问题:如何在cs文件里调用aspx文件里的javascript
- 程序集反射问题
- 如何显示GridView控件上所有行数?也就是统计GridView的数量
也就是将这段代码:
private void frmMain_youEvent(object sender, EventArgs e)
{
this.wbb_list.Navigate("http://www.sina.com");
}
改成:
private void frmMain_youEvent(object sender, EventArgs e)
{
this.wbb_list.Navigate("http://www.sina.com.cn");
[color=#FF0000]this.Show();[/color]
} 但这样的话就多出了一个窗口,我不想这样!