社区
C#
帖子详情
winform窗体文本控件Leave事件所引起的问题
zsyutian
2009-11-18 03:34:17
在winform窗体有一个文件控件,对其写了一个Leave事件,可有时关闭窗体时会触发到这个Leave事件,导致出现错误提示,我怎样做到关闭提示不让其触发该事件
if ( MdiParent.ActiveMdiChild.Name != "Quote") { return; }
这样写了好像也没有用
...全文
743
13
打赏
收藏
winform窗体文本控件Leave事件所引起的问题
在winform窗体有一个文件控件,对其写了一个Leave事件,可有时关闭窗体时会触发到这个Leave事件,导致出现错误提示,我怎样做到关闭提示不让其触发该事件 if ( MdiParent.ActiveMdiChild.Name != "Quote") { return; } 这样写了好像也没有用
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
huoyingyangjie
2009-11-20
打赏
举报
回复
closing是窗体关闭前,并且指出窗体关闭的原因,可能发生你说的情况吗?
jbo126
2009-11-20
打赏
举报
回复
就是去掉你那个MessageBox.Show。。。
然后通过类似ErrorProvider或状态栏显示你要显示的错误信息呀!
另外我沉得11楼的办法不可行,因为模态窗口的弹出是因为Leave事件的发生,那它为什么会发生呢,因为文本框失去了焦点,那文本框为什么会失去焦点呢?因为用户点击了其它的按钮或是其他的原因,在情况下如果用户点击的是窗体的关闭按钮或可以关闭窗体的普通按钮,则先导致文本框失去焦引发Leave事件进而弹出窗口,然后才会进入窗体关闭的方法!
zsyutian
2009-11-19
打赏
举报
回复
比如不用模态窗口显示错误等!
能有代码参考下吗
jbo126
2009-11-19
打赏
举报
回复
只有在这个文本框具有焦点的时候点窗体关闭按钮时才会引发Leave事件并弹出提示窗口,可以说只有在这个leave事件里有弹出的窗口这个就没法避免!基于你现在的这个思路很难改,你可以考虑换一个思路,比如不用模态窗口显示错误等!
zsyutian
2009-11-19
打赏
举报
回复
private void CustomerID_Leave(object sender, EventArgs e)
{
if (CustomerID.SetTextValue == "" || MdiParent.ActiveMdiChild.Name != "Quote") { return; }
System.Data.SqlClient.SqlDataReader sdr = Conn.ReturnDataReader(Conn.GetDb, "select isnull(curcode,''),isnull(Term,'') ,isnull(Priceterm,'') from customer where custcode='" + CustomerID.SetTextValue + "'");
if (sdr == null)
{
MessageBox.Show("你输入的客户" + CustomerID.SetTextValue + "是无效的,请重新确认");
CustomerID.Focus();
return;
} }
huoyingyangjie
2009-11-19
打赏
举报
回复
取消事件代理,CustomerID.leave -=[这里是你要取消的事件代理];这个代码放在
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
button1.Leave -= new System.EventHandler(this.button1_Leave);
}
zsyutian
2009-11-19
打赏
举报
回复
就这样沉了吗?
noway8881
2009-11-18
打赏
举报
回复
把整段代码拿出来。
kinglshadow
2009-11-18
打赏
举报
回复
application.close试试呢
fengling2001
2009-11-18
打赏
举报
回复
关闭文件的时候,屏蔽这个事件就可以啊
zsyutian
2009-11-18
打赏
举报
回复
就这样沉了吗?想了一天,始终没有想到好的办法,有时会出现此提示,就是关闭窗体时有时会触发哪个控件的leave事件
zsyutian
2009-11-18
打赏
举报
回复
就是一个文本控件,
liherun
2009-11-18
打赏
举报
回复
什么是文件控件?
C#
Winform
窗
体
与界面设计
本课程是针对C#
Winform
开发人员的基础性课程,详尽的介绍C#
Winform
窗
体
与界面的设计,通过提供实例,让C#
Winform
开发人员掌握相关程序设计技巧,为后面学习完整的实战课程打下较好的基础。
C#
winform
窗
体
焦点
事件
的验证顺序
winform
窗
体
焦点
事件
的顺序: 焦点
事件
按下列顺序发生: Enter//进入
控
件时发生 GotFocus //在
控
件接收焦点时发生
Leave
//输入焦点离开
控
件时发生 Validating //
控
件数据效验时发生 Validated //数据效验完成后发生 LostFocus //失去焦点时发生 如果 CausesValidation 属性设置为 false,则将取...
C#
winform
中textbox编辑框
控
件中只允许输入时间的实现
C#
winform
中textbox编辑框
控
件中只允许输入时间的实现 1.点击需要设置的编辑框
控
件右键->
事件
2.找到“
leave
”
事件
,在
leave
事件
中进行编辑框输入
文本
的检测 3.
leave
事件
的实现代码: //只允许输入时间,其他禁止输入(焦点离开
控
件时进行检测并提醒输入错误提示) string szTime = ""; private void tbTime_
Leave
(object sender, EventArgs e) { if (!System.Text.Regu
winform
鼠标离开子
控
件触发mouse
leave
事件
处理
Winform
控
件鼠标离开
事件
中 鼠标进入子
控
件也会触发mouse
leave
事件
处理 最近在做一个关于语音与
文本
互相转化的小工具,利用的是百度的语音与
文本
转化接口。由于百度的语音转
文本
极速版接口中,只 支持pcm格式以及处理60s以内的文件,故而工具中使用到了其中使用到了将包括 mp3,m4a。。。等格式音频文件转化成pcm格式 文件以及将超过60s文件切割成若干60s以内文件的技术,有...
(三十三)c#
Winform
自定义
控
件-日期
控
件
前提 入行已经7,8年了,一直想做一套漂亮点的自定义
控
件,于是就有了本系列文章。 GitHub:https://github.com/kwwwvagaa/Net
Winform
Control 码云:https://gitee.com/kwwwvagaa/net_
winform
_custom_control.git 如果觉得写的还行,请点个 star 支持一下吧 欢迎前来交流探讨: 企鹅群5...
C#
110,580
社区成员
642,559
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章