Windows Forms Programming In C# 读书笔记 - 第三章 Dialogs
1。Handling OK and Cancel
对于modal form ,如果 DialogResult 属性被开发者显式地设置了除了None以外的值,则该对话框会被自动关闭(会自动调用 Close() 方法)。
如果想让用户在按 Enter 以及 Esc 时相当于按了 OK 和 Cancel 按钮(符合一般的操作习惯),要设置对话框的 AcceptButton 以及 CancelButton 属性(可以直接在相应Form的属性栏中设置,在 Misc 分类中)。
this.AcceptButton = this.okButton;
this.CancelButton = this.cancelButton;
}
一般来说,如果设置了AcceptButton 以及 CancelButton 属性,则这两个按钮的的envent handler 就不需要了。
绝对要注意的是,需要手写类似如下的语句,写在Form的constructor中的 InitializeComponent() 后面:
this.okButton.DialogResult = DialogResult.OK;
this.cancelButton.DialogResult = DialogResult.Cancel;
不能写在 InitializeComponent() 中,因为该方法是 IDE 自动生成的。
2。对于Modeless Form Data
Modeless Form 在关闭的时候怎么把相应的信息带回调用它的 Form 呢?答案就是 .Net 中的event
// 当 Accept 按钮被按下时候的 Event
public event EventHandler Accept;
void acceptButton_Click(object sender, EventArgs e) {
// Accept 按钮的实践处理方法
if( Accept != null ) Accept(this, EventArgs.Empty);
}
void closeButton_Click(object sender, EventArgs e) {
this.Close();
}
}
void showProperties_Click(object sender, EventArgs e) {
PropertiesDialog dlg = new PropertiesDialog();
dlg.Accept += new EventHandler(Properties_Accept);
dlg.Show();
}
// Client handles event from form to access accepted values
void Properties_Accept(object sender, EventArgs e) {
PropertiesDialog dlg = (PropertiesDialog)sender;
this.Text = dlg.Text;
}
转载于:https://www.cnblogs.com/anf/archive/2005/02/27/109799.html
Windows Forms Programming In C# 读书笔记 - 第三章 Dialogs相关推荐
- 计算机系统导论第九章,计算机系统导论 -- 读书笔记 -- 第三章 程序的机器级表示 (持续更新)...
计算机系统导论 -- 读书笔记 -- 第三章 程序的机器级表示 (持续更新) 第三章 程序的机器级表示 3.1 历史观点 3.2 程序编码 1. 命令行 (1)编译 Linux> gcc -Og ...
- java虚拟机读书笔记 第三章 垃圾收集器和内存分配策略
java虚拟机读书笔记 第三章 垃圾收集器和内存分配策略 GC需要完成的三件事情:哪些内存需要回收.什么时候回收.如何回收 垃圾回收器在对堆进行回收前,首先要确定那些对象存活,哪些对象已经死去,判断的 ...
- Android群英传神兵利器读书笔记——第三章:Android Studio奇技淫巧
Android群英传神兵利器读书笔记--第三章:Android Studio奇技淫巧 这篇文章篇幅较长,可以使用版权声明下面的目录,找到感兴趣的进行阅读 目录 3.1 Android Studio使用 ...
- python第三章上机实践_《机器学习Python实践》读书笔记-第三章
<机器学习Python实践>,第三章,第一个机器学习项目 以往目录:橘猫吃不胖:<机器学习Python实践>读书笔记-第一章zhuanlan.zhihu.com 书中介绍了一 ...
- sql经典实例_读书笔记 前三章
sql经典实例_读书笔记 温故SQL以及数据库相关知识 1.检索记录 select * from emp //检索所有列 where dep = 10 //选择出指定行 or comm is not ...
- 《深入理解计算机系统》(CSAPP)读书笔记 —— 第三章 程序的机器级表示
本章主要介绍了计算机中的机器代码--汇编语言.当我们使用高级语言(C.Java等)编程时,代码会屏蔽机器级的细节,我们无法了解到机器级的代码实现.既然有了高级语言,我们为什么还需要学习汇编语言呢?学习 ...
- 《php开发典型模块大全》读书笔记 第三章 mysql数据库基础
第三章 mysql基础 show columns from table describe table alter table 修改表 rename table t1 to t2 整型 ...
- 《Linux内核设计与实现》读书笔记 第三章 进程管理
第三章进程管理 进程是Unix操作系统抽象概念中最基本的一种.我们拥有操作系统就是为了运行用户程序,因此,进程管理就是所有操作系统的心脏所在. 3.1进程 概念: 进程:处于执行期的程序.但不仅局限于 ...
- 《算法导论》读书笔记--第三章 函数的增长
好长时间了,继续算法导论. 当输入规模足够大时,并不计算精确的运行时间,倍增常量和低阶项被舍去.我们要研究的是算法的渐近效率,即在输入规模无限量时,在极限中,算法的运行时间如何随着输入规模的变大而增加 ...
最新文章
- 自旋电子学与量子计算机,基于“分子自旋电子学”的新技术,将给量子计算机带来新希望!...
- c++ 判断数学表达式有效性_C运算符和表达式、if判断、switch与逻辑运算、循环语句...
- 用 Flask 来写个轻博客 (25) — 使用 Flask-Principal 实现角色权限功能
- Oracle 分析函数--Row_Number()
- android界面布局题,【填空题】Android 系统中, 用于定义布局显示在界面上的风格。...
- Python Excel表格操作总结
- mysql外连接_mysql学习-mysql内连接外连接
- arm 架构_ARM发布A78增强版大核架构:性能怪兽
- Aspnetpage ie10下 __dopost方法未找到 不能翻页的问题
- 类加载机制、双亲委派机制深度解析以及如何自定义类加载器
- vue自定义全局组件(或自定义插件)
- 对象的当前状态使该操作无效
- pureftp在企业中的应用及配置
- 在哪里买腾讯云服务器,在哪查看我的腾讯云服务器购买记录?
- iOS 颜色渐变圆环
- 香港服务器的数据泄露是什么?怎样预防?
- 关系数据库范式及1NF、2NF、3NF和BCNF
- 成功解决failed: The TLS connection was non-properly terminated
- 珞珈-B生所学 跟学笔记 PPT(三)(完结)
- 步步为营-57-JQuery练习题