首页 新闻 赞助 找找看

winform中2次模式窗体的问题

0
悬赏园豆:20 [已关闭问题] 关闭于 2013-09-25 11:20

Form f1 = new Form();

f1.showDialog(this);

if (f1.DialogResult == DialogResult.OK)

{

   Form2 f2 = new Form2();

   f2.ShowDialog(this)

}

代码是类似这样,通过键盘回车触发f1选择,返回结果,但是这个回车事件会带到f2中,结果触发了f2的提交事件。f2中是默认文本框的KeyUp事件提交,现在结果是f1的keyup事件被传递过去了。

清海扬波的主页 清海扬波 | 小虾三级 | 园豆:825
提问于:2013-09-23 14:47
< >
分享
所有回答(1)
0

表示不理解。

模式窗体只有最顶层的才能操作。

幻天芒 | 园豆:37175 (高人七级) | 2013-09-23 18:15

详细解释一下,f1打开后,窗体就2个按钮,用回车选择,带回数据到父窗体,父窗体根据带回的值弹出f2,在f2里面默认一个文本框获得焦点,在文本框的keyup事件中有业务处理。如果f1中在按钮的click事件中做处理,那么键盘的keyup事件就会当在f2打开之后才做处理,而f2因为有文本框事件,直接就执行了,我是想怎么把个字的事件保持在当前窗口有效就行了,不要带到别的窗口去。

支持(0) 反对(0) 清海扬波 | 园豆:825 (小虾三级) | 2013-09-24 09:32
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册