博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Winform 弹出窗体等待
阅读量:5347 次
发布时间:2019-06-15

本文共 2001 字,大约阅读时间需要 6 分钟。

显示效果:

FrmWaiting.cs:

1 public FrmWaitingBox(EventHandler
Method,string msg) 2 { 3 InitializeComponent(); 4 if (!string.IsNullOrEmpty(msg)) 5 lblTip.Text = msg; 6 _Method = Method; 7 } 8 private EventHandler
_Method; 9 private IAsyncResult asyncResult;10 private void timer1_Tick(object sender, EventArgs e)11 {12 if (asyncResult.IsCompleted)13 this.Close();14 }15 ///
16 /// 窗体第一次加载事件17 /// 18 ///
19 ///
20 private void FrmWaitingBox_Shown(object sender, EventArgs e)21 {22 asyncResult = _Method.BeginInvoke(null, null, null,null);23 }
View Code

Form1.cs:

1 private void btnStart_Click(object sender, EventArgs e) 2         { 3             var list = new List
(); 4 FrmWaitingBox waitingBox = new FrmWaitingBox((obj, args) => 5 { 6 //Thread.Sleep(5000); 7 for (int i = 1; i <= 50; i++) 8 { 9 list.Add(new User {10 Id=i,11 UserName="Test"+i,12 Age=18+i,13 Birth=DateTime.Now14 });15 }16 //this.Invoke(new Action(() =>17 //{18 // dgvData.DataSource = list;19 //}));20 },"数据获取中,请等待!");21 waitingBox.ShowDialog(this);22 dgvData.DataSource = list;23 }24 public class User25 {26 public int Id { get; set; }27 public string UserName { get; set; }28 public int Age { get; set; }29 public DateTime Birth { get; set; }30 }
View Code

源代码下载:

 第二种实时显示进度:

源代码:

第二种源博客地址:

转载于:https://www.cnblogs.com/mybk/p/9792236.html

你可能感兴趣的文章
零散笔记
查看>>
MaiN
查看>>
[Python学习] 简单网络爬虫抓取博客文章及思想介绍
查看>>
触发器课程SQL Server 知识梳理九 触发器的使用
查看>>
信息浏览器从Android的浏览器中传递cookie数据到App中信息浏览器
查看>>
客户端连接linux虚拟机集群报错
查看>>
linux下部署一个JavaEE项目的简单步骤
查看>>
hash储存机制
查看>>
[Android学习系列16]Android把php输出的json加载到listview
查看>>
20145205 《信息安全系统设计基础》第14周学习总结
查看>>
6)添加一个窗口的图标
查看>>
POJ - 1422 Air Raid 二分图最大匹配
查看>>
Road Map
查看>>
正则替换中的一个Bug
查看>>
HI3531uboot开机画面 分类: arm-linux-Ubunt...
查看>>
制作U盘启动CDLinux 分类: 生活百科 ...
查看>>
strcpy函数里的小九九
查看>>
搭建ssm过程中遇到的问题集
查看>>
OpenLayers绘制图形
查看>>
tp5集合h5 wap和公众号支付
查看>>