You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让代码等待至form上的OK按钮被点击后再继续执行

解决方案

你当前使用的Show()是无模式窗体调用方法,执行后会立即返回,不会阻塞后续代码运行。要实现等待用户操作后再继续执行,直接替换为模态窗体调用方法ShowDialog()即可:

DialogResult operResult = templateForm.ShowDialog();

补充说明

  • ShowDialog()会阻塞当前调用线程,直到窗体被用户关闭才会返回操作结果
  • 你可以通过返回的枚举值判断用户操作,再执行对应逻辑:
    if (operResult == DialogResult.OK)
    {
        // 用户点击了OK按钮,此处可读取窗体上的用户输入内容,执行后续业务逻辑
    }
    else
    {
        // 用户点击了取消/直接关闭了窗体,执行分支逻辑
    }
    
  • 提前对Form做两个配置即可正常使用:
    • 把窗体中OK按钮的DialogResult属性设置为DialogResult.OK,可选将窗体的AcceptButton属性绑定为该OK按钮,实现按回车键触发OK操作
    • 如果有取消按钮,将其DialogResult属性设置为DialogResult.Cancel,可选将窗体的CancelButton属性绑定为该取消按钮,实现按ESC触发取消操作

内容的提问来源于stack exchange,提问作者lonnebol

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 20:54:01