社区
C#
帖子详情
控件在父窗口关闭时会有哪个事件被触发
xiuxianmajia
2008-07-17 10:11:26
是这样
我继承了DataGridView,希望在窗口关闭时在注册表中记录下列宽,然后下次再打开始恢复列宽
但是找来找去,只找到Dispose可用,但如果在窗口并未被垃圾回收器回收前又打开这个窗口,Disponse并不执行
现在我就凑合着关闭窗口就显示的Dispose一下,很难看
我现在需要一个在窗口Close时会被触发的控件的事件,请高手给点拨下哪个是呢,感激涕零!
...全文
94
11
打赏
收藏
控件在父窗口关闭时会有哪个事件被触发
是这样 我继承了DataGridView,希望在窗口关闭时在注册表中记录下列宽,然后下次再打开始恢复列宽 但是找来找去,只找到Dispose可用,但如果在窗口并未被垃圾回收器回收前又打开这个窗口,Disponse并不执行 现在我就凑合着关闭窗口就显示的Dispose一下,很难看 我现在需要一个在窗口Close时会被触发的控件的事件,请高手给点拨下哪个是呢,感激涕零!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
paulin
2008-07-25
打赏
举报
回复
总结的不错~
xiuxianmajia
2008-07-17
打赏
举报
回复
另外:补充说下:我集成的是DataGridView,没有Close可继承
wf5360308,说的有道理,我没考虑到,马上改用XML
xiuxianmajia
2008-07-17
打赏
举报
回复
感谢vwxyzh! HandleDestroyed正是我需要的
总结下模态窗口和非模态窗口,算自己留个笔记加深印象:
1、
以ShowDialog()打开的模态窗口在Close时不会触发Disponse,即便是出了作用域也不会立即触发(这里强调“立即”,隐含的意思是当垃圾回收器运行时,Disponse还是会被触发的)
private void button1_Click(object sender, EventArgs e)
{
Form form1 = new Form();
form1.ShowDialog();
}
上面代码,即使出了button1_Click{....},form1.Disponse()也不会被执行
2、以Show()打开的非模态窗口在以上方面的表现都是反过来的。在Close时它的Disponse会被触发,下面的代码
class class1
{
Form form1 = new Form();
private void button1_Click(object sender, EventArgs e)
{
form1.
Show
();
}
}
第一次点button1程序运行没问题,而再点一次就会报错了,因为前一次close时实例已经不存在了,而换成模态窗口,是可以的
class class1
{
Form form1 = new Form();
private void button1_Click(object sender, EventArgs e) //点一白次也没问题
{
form1.
ShowDialog
();
}
}
guilin_gavin
2008-07-17
打赏
举报
回复
学习中
冷月孤峰
2008-07-17
打赏
举报
回复
一般都是用 FormClosed 和 FormClosing 这两个事件。
在注册表中记录下列宽
=====================
为什么不用XML呢,很多杀毒软件会监控注册表的
vwxyzh
2008-07-17
打赏
举报
回复
试一下HandleDestroyed
paulin
2008-07-17
打赏
举报
回复
closing事件中存取控件相关数据,存在xml文件中
rainxy2000
2008-07-17
打赏
举报
回复
Unload事件中。
smntbk
2008-07-17
打赏
举报
回复
在窗体的FormClosing事件中写不行么?
nextsea
2008-07-17
打赏
举报
回复
FormClosed 和 FormClosing 就行
zzyhuian06142
2008-07-17
打赏
举报
回复
Closing事件看看
c# 实现子
窗口
关闭
父
窗口
也
关闭
的方法
其实是
窗口
间通讯的问题,在form1上打开form2 ,form2
关闭
时
关闭
form1 实现方法: 在子
窗口
form2中声明
事件
: public delegate void childclose(); public event childclose closefather; 然后在它的
关闭
事件
中
触发
本
事件
: private void Form2_Closed(object sender, System.EventArgs e) { //用
事件
去
关闭
主
窗口
closefather(); } 在
父
窗口
form1中(比如登陆
窗口
中): 然后弹出子form2窗体的
[精仿]QQ2013局域网通讯(10.30更新版-带最新版界面库)
项目名称:高仿QQ2013通讯DEMO-10.30更新 版本号:10.30 最新版本 下载内容: (C#)CC2013局域网通讯源码一份, 可引用至工具箱最新版CSkin.dll-10.30版本界面库一份。 界面库更新说明: CC2013-10.30 1.由于SkinForm名字太多人使用,界面库命名正式改为CSkin.dll,官网www.cskin.net。 2.SkinTabControl标签中添加菜单箭头,可点击展开菜单。 3.SkinTabControl添加标签
关闭
按钮。 4.修复部分中文乱码问题。 5.优化好友列表右键菜单。 6.将窗体自定义系统按钮改为集合模式,可添加无数个自定义系统按钮。自定义系统按钮
事件
中可以 e.参数 来判断。 7.增加360安全卫士-DEMO案例。 8.增加SkinAnimatorImg
控件
,用于支持位图动画的播放。如360的动态logo。 9.各种细节BUG优化。 CC2013-10.11 1.添加SkinTabControlEx,加入更加自定义的美化属性和动画效果。 2.添加SkinAnimator,通用动画
控件
。 3.添加Html编辑器
控件
4.修复SkinButton图标和文本相对位置的BUG CC2013-9.26 1.优化好友列表CPU占用 2.好友列表加入好友登录平台属性:安卓 苹果 WEBQQ PC 3.优化标题绘制模式,新添标题绘制模式属性。 4.新添标题偏移度属性。 5.加入圆形进度条
控件
:ProgressIndicator。 CC2013-9.5.2 1.优化截图
控件
,截图工具栏加入新功能。 2.解决个人信息卡和天气窗体显示后不会消失的问题。 3.各种细节BUG优化。 CC2013-9.5.1 1.解决贴边左右隐藏的BUG。 2.解决窗体点击
事件
不能
触发
的问题。 3.优化SkinButton继承
父
容器背景色的代码。 4.解决SkinButton异常错误。 CC2013-9.3 1.好友列表右键菜单没反应问题。 2.新增美化
控件
SkinDatagridview。 3.密码软件盘回删不了文字问题。 4.双击窗体最大化,最大化后再双击恢复原大小,(win7)。 5.部分细节调优。 实现功能: 1.界面库中多达25个自定义换肤
控件
,让每个
控件
设设属性就能达到你想要的效果,支持图片换肤和色调绘制。 2.四边阴影,毛边效果,可以设置阴影宽度和阴影颜色,支持所有系统。 3.拥有密码键盘输入,防护更贴心。 4.8种圆角窗体模式供你选择,淋漓尽致,润滑如圆。 5.登录主界面后,有登陆提示窗,提示上次登录的城市和时间。 6.皮肤随心变:拖动任意一张图片至主界面,就可以改变皮肤。 7.皮肤色调获取:改变皮肤的同时,将计算图片色调,再将其运用到窗体背景色。 8.皮肤尾部渐变:上下左右方均可实现,渐变皮肤。 9.皮肤拖拉方向:可以选择皮肤在拉伸的时候,粘着哪一边拖拉。 10.GDI+界面重绘,处理消息机制,3种移动模式和拉伸是否启用只需要设置一个属性的事就可以解决。 11.界面渐变闪现和闪退:不再像平凡的突然出现,采用API渐变机制,渐渐出现和消失,win7系统下还有动态缩小至任务的效果。 12.完美好友列表,可添加上千好友,不卡不掉线,还可以拖动好友到其他分组。 13.好友悬浮至头像可以查看详细资料卡。 14.
窗口
可调渐变后透明度:让窗体看起来更像是Vista玻璃窗体风格。 15.聊天
窗口
可发送图片,大文件,表情,还有震动。 16.按钮
控件
背景色拥有继承窗体背景主色调的功能,让整体色调保持一致。 17.更是有和如出一辙的扣扣截图。仿真度也达到100%,完美修复所有已知BUG。 18.聊天
窗口
,可以调字体颜色和字体样式等多项功能。 20.SkinLabel与SkinButton
控件
字体与窗体标题可以根据背景色暗亮度自动调节字体为黑还是白。 21.MessageBox提示框的美化,并继承调用
窗口
的色调与背景,MessageBox可所谓已达到帅气的不能再帅气的境界了。 22.天气皮肤自动变,所有窗体根据当地天气自动决定皮肤背景,CC最帅气功能之一。 23.个人资料卡及聊天窗体拥有动态CC秀展示。 24.主界面拖动换肤的同时,所关联的子窗体皮肤也会跟着变。 25.多线程大文件传输功能,支持无上限大文件传输,有进度条显示进程度。 26.界面库已封装了大图取主色调,颜色判断暗亮等多项功能。 27.如果你觉得获取天气让你的登录太慢不想要的话,注释相关调用方法即可快速登录。 界面库交流群:306485590 本人QQ:345015918 注意: Demo版不包括更新,为方便用户查看和使用属性等方法,dll只轻微加密。想反编译的就不要尝试了,里面有上百个类,改错改到你哭。 介意购买正版,永久更新配源码。 看截图或者想购买商业版的用户请访问以下地址: http://www.51aspx.com/code/TotalLikeQQ2013 特权:购买商业版的用户,有权利享有最快的更新服务,第一时间将最新版本的dll源码送到你手上。 使本项目源码或本项目生成的DLL前请仔细阅读以下协议内容,如果你同意以下协议才能使用本项目所有的功能,否则如果你违反了以下协议,有可能陷入法律纠纷和赔偿,作者保留追究法律责任的权利。 1、你可以在开发的软件产品中使用和修改本项目的源码和DLL,但是请保留所有相关的版权信息。 2、不能将本项目源码与作者的其他项目整合作为一个单独的软件售卖给他人使用。 3、不能传播本项目的源码和DLL,包括上传到网上、拷贝给他人等方式。 4、以上协议暂时定制,由于还不完善,作者保留以后修改协议的权利。 时间:2013-7-5 作者: 乔克斯 请保留以上版权信息,否则作者将保留追究法律责任。
c# 窗体继承子窗体按钮
触发
父
窗体
事件
c#的winform中,子窗体继承
父
窗体,但是子窗体按钮点击的时候或者子窗体的其他
事件
触发
后,
父
窗体的对应
事件
也会被
触发
。 有一个现象是子窗体在继承
父
窗体的情况下,子窗体中对应的
控件
无法修改名称,这也就导致了后来的原因。 窗体的按钮或者其他
控件
都继承自System.Windows.Forms.Control类,其中也就包含了按钮的click
事件
,而按钮也就继承了click这个
事件
的字段,而常说的
事件
无法继承主要讲的是
事件
的
触发
或者实现,而按钮继承control类之后,后续的方法可以对click事...
C#
父
窗体监听子窗体
事件
&C#子窗体产生
事件
给
父
窗体&
父
窗体
触发
子窗体的
事件
&
父
窗体中处理子窗体
控件
的
事件
&C#使用自定义的
事件
委托传递消息
C#
父
窗体监听子窗体
事件
或在
父
窗体中处理子窗体
控件
的
事件
文章目录C#
父
窗体监听子窗体
事件
或在
父
窗体中处理子窗体
控件
的
事件
前言使用默认
事件
委托子窗体代码演示
父
窗体使用方法使用自定义的
事件
委托子窗体代码演示
父
窗体使用方法总结 前言 在C#程序编写过程中,我们可能会遇到子窗体点了一下按钮,或者勾选了个复选框 想让其在
父
窗体中处理这个
事件
的问题。 虽然可以通过直接将子窗体的
控件
变为公有属性,这样就可以直接在
父
窗体中绑定上这个
事件
。但是!!! 如果业务变得复杂,这种问题变多了,会让我们的代码耦合度非常高,可读性也
【QT】
父
窗口
、信号和槽、面向对象
一、
父
窗口
1.1 介绍 创建
控件
时,可以指定停靠在某个
父
窗口
上面,这时
控件
将作为子
窗口
被束缚在其
父
窗口
的内部,并伴随
父
窗口
一起移动、隐藏、显示和
关闭
,否则该
控件
将作为独立
窗口
显示在屏幕上,且游离于其它
窗口
之外。 QWidgets 及其子类的对象都可以作为其它
控件
的
父
窗口
,常见的
父
窗口
类有如下三个: QWidgets QMainWindow:QWidgets 的直接子类 QDialog:QWidgets 的直接子类 1.2 析构函数
父
窗口
的析构函数会自动销毁其所有子
窗口
对象,因此即使子
窗口
对象是通过
C#
110,018
社区成员
642,615
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章