请问如何实现弹窗并显示信息?

mcuatmel 2020-01-13 03:37:33
我在主窗体中有网络通讯 ,当有数据错误时我想弹窗,弹窗上有一个列表控件儿,把错误显示在弹窗列表中,直至手动关闭。
...全文
510 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Bridge_go 2020-01-14
  • 打赏
  • 举报
回复
直接在线程里面ShowDialog()就好了
Bridge_go 2020-01-14
  • 打赏
  • 举报
回复
引用 9 楼 datafansbj 的回复:
[quote=引用 8 楼 Bridge_go 的回复:] 直接在线程里面ShowDialog()就好了
这方法不好,不说能不能 show(线程里的代码可能无法显示 MessageBox),即使能 show,在 show 的时候线程就阻塞了,在 MessageBox 关闭前,不会继续执行后面的代码了。[/quote] 看他意思是要手动关闭窗口后才继续执行后面的
datafansbj 2020-01-14
  • 打赏
  • 举报
回复
引用 8 楼 Bridge_go 的回复:
直接在线程里面ShowDialog()就好了


这方法不好,不说能不能 show(线程里的代码可能无法显示 MessageBox),即使能 show,在 show 的时候线程就阻塞了,在 MessageBox 关闭前,不会继续执行后面的代码了。
threenewbee 2020-01-13
  • 打赏
  • 举报
回复
这样判断
if (Application.OpenForms[窗口名] != null)
Application.OpenForms[窗口名].Show();
else
new 窗口名().Show();
  • 打赏
  • 举报
回复
定义一个全局变量,当error的时候给变量赋值。主界面拖个timer控件监控这个变量,需要弹的时候就弹,弹完了给变量的值再置回来防止重复弹。或者再定义一个变量,当窗体弹出来了,就不再重复弹。
易鑫666 2020-01-13
  • 打赏
  • 举报
回复
MessageBox.Show("内容")
groveer 2020-01-13
  • 打赏
  • 举报
回复
通讯线程里面接收到错误消息就用委托得形式告诉主窗体弹出错误窗体 关于委托知识 自行百度
mcuatmel 2020-01-13
  • 打赏
  • 举报
回复
谢楼上两位,但我的窗体是什么时候弹出?
我通讯是一个线程,它没办法弹出这个窗体。
datafansbj 2020-01-13
  • 打赏
  • 举报
回复
设计弹出窗体结构,将消息设计成委托,传给通信模块。当通信模块出错时,将消息通过这个委托传出,就可以将错误消息添加到窗体的列表控件里显示。
姎楹 2020-01-13
  • 打赏
  • 举报
回复
那你可以做一个error的窗体,里面放一个listview之类的,定义一个全局变量,主窗体给这个变量赋值,error窗体接收显示。

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧