惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

大猫的无限游戏
大猫的无限游戏
J
Java Code Geeks
小众软件
小众软件
D
Docker
腾讯CDC
H
Hackread – Cybersecurity News, Data Breaches, AI and More
V
V2EX
博客园 - 叶小钗
GbyAI
GbyAI
Microsoft Azure Blog
Microsoft Azure Blog
Stack Overflow Blog
Stack Overflow Blog
B
Blog RSS Feed
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 【当耐特】
IT之家
IT之家
博客园 - 司徒正美
M
MIT News - Artificial intelligence
T
The Blog of Author Tim Ferriss
The GitHub Blog
The GitHub Blog
罗磊的独立博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LangChain Blog
阮一峰的网络日志
阮一峰的网络日志
C
Check Point Blog

博客园 - soonssa

离线使用Visual Studio的Javascript Prettier插件 在各页顶端以标题行形式重复出现无效 转:Windows 8上强制Visual Studio以管理员身份运行 读取Excel是数据截断问题 将word表格中数据导出到Excel jQuery UI Autocomplete 1.8.16中文输入修正 一次诡异的http404错误的解决 Sqlite Expert Professional 3 破解 复制SqlServer备份到其他计算机,实现异地备份 - soonssa - 博客园 贝电BD201 ADSL MODEM 设置 jquery UI Webservice的安全问题 从Enterprise Library获取的数据的DataGridView的中文排序 ASPNET内置身份认证,用户身份串门 media palyer activex播放问题 莫名其妙的“文件不存在”错误 - soonssa - 博客园 CuteEditor允许插入javascipt语句 - soonssa - 博客园 两个客户端操作TreeView节点CheckBox的小例子(转) 图书馆专业英语词汇
FixedDialog模式
soonssa · 2008-05-29 · via 博客园 - soonssa

如果把winform窗体的FormBorderStyle属性设置成FixedDialog,则这个窗体显示出来为模式窗口,
向这个窗体上添加两个按钮,一个为Button_Submit,一个为Button_Cancel。
设置这个窗体的AcceptButton为Button_Submit,CancelButton为Button_Cancel;
设置Button_Submit按钮的DialogResult属性为OK,设置Button_Cancel按钮的DialogResult属性为Cancel;

使用

DialogResult result = formDBSet.ShowDialog(); 打开窗体;

这样在Button_Submit的Click事件中就不用添加this.close()了,窗体会自动关闭,并且可以从result值中获取关闭窗体是是那个按钮按下的。

如果不设置按钮的DialogResult属性,可以在Button_Submit的Click事件中添加this.DialogResult = DialogResult.OK;在Button_Cancel按钮的Click事件中添加this.DialogResult = DialogResult.Cancel。 这样做的好处是在Click事件中可以控制是否关闭,如果出错了,可以不关闭。

当窗体显示为模式对话框时,单击“关闭”按钮(窗体右上角带 X 的按钮)会隐藏窗体并将 DialogResult 属性设置为 DialogResult.Cancel。与无模式窗体不同,当用户单击对话框的关闭窗体按钮或设置 DialogResult 属性的值时,.NET Framework 不调用 Close 方法。窗体转而可以隐藏并可重新显示,而不用创建该对话框的新实例。因为未关闭显示为对话框的窗体,所以在您的应用程序不再需要该窗体时,必须调用该窗体的 Dispose 方法。