请选择 进入手机版 | 继续访问电脑版

[C#教程] C# DialogResult用法案例详解

[复制链接]
查看119 | 回复7 | 2021-9-12 13:07:56 | 显示全部楼层 |阅读模式

在程序中,常常 会弹出一个对话框来让用户填写一些信息,填写完成后,当用户点击“确定”按钮后,在主窗体中举行 其他的处理。比如一个简单的例子,在主窗体中有一个菜单,是“增长 用户”,当点击这个菜单之后,我们必要 弹出一个增长 用户的窗体出来,就假设“增长 用户”的窗体叫frmAddUser,那么代码如下:

  1. frmAddUser frm = new frmAddUser();
  2. if (frm.ShowDialog() == DialogResult.OK)
  3. {
  4. //todo list
  5. }
复制代码

一样平常 都是设置“增长 用户”窗体中“确定”按钮的DialogResult的属性,

      设置完成后,只要用户一点击“确定”按钮,那么对话框就关闭,重新回到主窗体,然后可以在主窗体中举行 相应的处理,比如把数据写入数据库等。

      如今 有一个标题 就是,“增长 用户”的窗体如下:

      假如 我想判定 一下,用户输入的邮件格式是否精确 ,那么我该把这段代码放在哪呢?假如 放在邮件输入框谁人 TextBox的TextChaged变乱 中,那么用户输入一个字母都会激发谁人 变乱 ,如许 就不太好,假如 放在“确定”按钮的变乱 中,那么假如 用户的邮件格式输入的不精确 ,就不应该返回主窗体,而是继续留在这个窗体上,等待用户修改,但是 究竟 却不是如许 ,由于 你设置了“确定”按钮的Dialogue属性,只要用户一点击按钮,主窗体中的

  1. if (frm.ShowDialog() == DialogResult.OK)
复制代码

这个判定 就为真,不管你的邮件格式是否精确 ,主窗体都会继续向下实行 。

      末了 ,终于找到了一个比较好的办理 办法,都以为只有Button才有Diagolue属性,没想到窗体也有这个属性。以是 我们根本就不必要 设置“确定”按钮的Diagolue属性,直接把判定 邮件是否合格的方法放在”确定”按钮的点击变乱 中,假如 符合,那么就设置窗体的Diagolue属性为OK,用下面的代码:

  1. this.DialogResult = DialogResult.OK;
复制代码

如许 主窗体中的if (frm.ShowDialog() == DialogResult.OK)这个判定 也为真,它会继续实行 下面的代码。假如 不符合格式,就啥也不做,由于 没有设置窗体的Diagolue属性为OK,以是 “增长 用户”的对话框永世 不会关闭,主窗体也会不停 等待,而不会去实行 其他的代码。

     例子比较简单,只是我原来不知道这些,以是 在这里记录一下。当然这只是一种办法,你也可以用其他的方法来办理 类似 如许 的标题 。

到此这篇关于C# DialogResult用法案例详解的文章就先容 到这了,更多干系 C# DialogResult用法内容请搜索 脚本之家从前 的文章或继续欣赏 下面的干系 文章盼望 大家以后多多支持脚本之家!


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

avatar 直子的爱本 | 2021-9-21 17:40:07 | 显示全部楼层
论坛的帖子越来越有深度了!
回复

使用道具 举报

avatar 乔微博 | 2021-9-26 23:31:19 | 显示全部楼层
精神病院在通缉admin楼主!
回复

使用道具 举报

avatar Gemini迷妹 | 2021-10-1 21:55:27 | 显示全部楼层
楼上的忘记吃药了!
回复

使用道具 举报

avatar 清城2017 | 2021-10-11 18:34:13 | 显示全部楼层
admin楼主说的我也略懂!
回复

使用道具 举报

视死如归的架势啊!
回复

使用道具 举报

顶一下,收藏了!
回复

使用道具 举报

avatar AriesHun | 前天 19:58 | 显示全部楼层
楼上的说的很多!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则