小编use*_*900的帖子

调用Form.Close后表单不关闭

我们有一个在客户端运行的应用程序正在显示奇怪的行为.在白天的随机时间,某些表单上的"确定"按钮(调用Form.Close方法)不会导致表单关闭.我的意思是用户将单击按钮,在跟踪中它将显示已调用Form.Close但表单将不会关闭.

奇怪的是,表单本身仍然是响应式的,因此他们可以单击表单上的任何按钮,按钮后面的代码将执行,但表单不会关闭.

这种状态持续几秒到几分钟.然后,表格突然开始处理并消失.真奇怪.

所以回顾一下,发生以下情况:

  • Form.ShowDialog() - >表格显示
  • 用户在表单上工作并按下按钮等
  • Form.Close() 被叫 - >用户点击了关闭按钮
  • 表单只是在等待关闭的同时仍然处于响应状态的时间量过去了(在这段时间内,受挫的用户多次敲击关闭按钮而没有响应)
  • 突然表格处理并从中返回对话框结果 Form.ShowDialog

注意事项:

  • 我没有使用任何类型的线程.
  • 在某些时候,据报道该explorer.exe进程已在PC上停止,这是否会对表单的行为产生影响?我们正在安排重建PC.

我的问题是,是否有人知道可能导致上述行为的情况?

我不是Forms的专家,但据我所知,当你调用时Form.Close,表单不会立即关闭,当前调用Close的方法首先完成,然后另一个进程触发表单开始关闭和处理.

这可能与explorer.exe未运行的进程有关吗?

任何见解将不胜感激.

***编辑

另请注意,我们无法复制该问题,它会在客户端随机发生.

c# forms

6
推荐指数
1
解决办法
1915
查看次数

标签 统计

c# ×1

forms ×1