C# UserControl

winform里的UserControl用户控件上button_quit_Click如何关闭当前的winform.UserControl用户控件上button_quit_... winform里的UserControl用户控件上button_quit_Click如何关闭当前的winform.
UserControl用户控件上button_quit_Click,没有window.close,用this.hide只能关闭UserControl,不能关闭winform.如何解决??
还有 UserControl用户控件中的确定按钮和取消按钮 在 winform
中怎样保证按Enter 表示确定 按ESc表示取消呢(这个UserControl已经被拖到form窗体上)
还有update 怎样更新两个表吗?就是说两个表的更新能不能用一个sql语句
展开
 我来答
yp227
推荐于2016-04-28 · TA获得超过538个赞
知道小有建树答主
回答量:226
采纳率:100%
帮助的人:95.5万
展开全部
可以在form_load事件里把this传给usercontrol,然后在usercontrol里调用form的各种方法,不过这种做法不太好,耦合性较高。
标准做法是用事件传递
usercontrol里加如下代码:
public delegate void FormCloseEventHandler(object sender, EventArgs e);

public event FormCloseEventHandler FormClose;

private void button_quit_Click(object sender, EventArgs e)
{
if (this.FormClose != null)
{
FormClose(this, new EventArgs());
}
}

在form里添加如下代码:
form_load事件里:
this.userControl.FormClose += new UserControl.FormCloseEventHandler(this.userControl_FormClose);

单独的方法:
private void userControl_FormClose(object sender, EventArgs e)
{
this.Close();
}

后面的enter和Esc都可参考以上方法解决,关于事件的用法再去查查msdn吧。。。
dong_1984dd
2009-11-30 · TA获得超过1.1万个赞
知道小有建树答主
回答量:1070
采纳率:100%
帮助的人:228万
展开全部
private void button_quit_Click(object sender, EventArgs e)
{
this.ParentForm.Close()
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逍遥堕仙
2009-11-30 · TA获得超过421个赞
知道小有建树答主
回答量:140
采纳率:0%
帮助的人:174万
展开全部
问题一:
UserControl里放个CLOSE按钮,加入代码:

Form form1 = this.Parent as Form;
form1.Close();

问题二:
在UserControl中加入下面事件
private void UserControl1_KeyPress(object sender, KeyPressEventArgs e)
在下面的事件中判断KEY的值....
再作处理....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
火沙
2009-11-30 · TA获得超过954个赞
知道小有建树答主
回答量:478
采纳率:0%
帮助的人:398万
展开全部
Form frm = this.FindForm();
if(frm!=null)
{
frm.Close();
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
姿上园5045
2009-11-30 · TA获得超过651个赞
知道小有建树答主
回答量:629
采纳率:100%
帮助的人:591万
展开全部
废话不多说 顶3楼
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式