显示效果:

FrmWaiting.cs:

 public FrmWaitingBox(EventHandler<EventArgs> Method,string msg)
{
InitializeComponent();
if (!string.IsNullOrEmpty(msg))
lblTip.Text = msg;
_Method = Method;
}
private EventHandler<EventArgs> _Method;
private IAsyncResult asyncResult;
private void timer1_Tick(object sender, EventArgs e)
{
if (asyncResult.IsCompleted)
this.Close();
}
/// <summary>
/// 窗体第一次加载事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void FrmWaitingBox_Shown(object sender, EventArgs e)
{
asyncResult = _Method.BeginInvoke(null, null, null,null);
}

Form1.cs:

 private void btnStart_Click(object sender, EventArgs e)
{
var list = new List<User>();
FrmWaitingBox waitingBox = new FrmWaitingBox((obj, args) =>
{
//Thread.Sleep(5000);
for (int i = ; i <= ; i++)
{
list.Add(new User {
Id=i,
UserName="Test"+i,
Age=+i,
Birth=DateTime.Now
});
}
//this.Invoke(new Action(() =>
//{
// dgvData.DataSource = list;
//}));
},"数据获取中,请等待!");
waitingBox.ShowDialog(this);
dgvData.DataSource = list;
}
public class User
{
public int Id { get; set; }
public string UserName { get; set; }
public int Age { get; set; }
public DateTime Birth { get; set; }
}

源代码下载:FrmWaiting

第二种实时显示进度:

源代码:代码下载

第二种源博客地址:https://www.cnblogs.com/lijuanfei/p/6080594.html

Winform 弹出窗体等待的更多相关文章

  1. winform 弹出窗体指定位置

    在启动一个程序时,我们希望窗口显示的位置处于屏幕的正中心,可以如下设置: MainForm mainForm = new MainForm(); mainForm.StartPosition = Fo ...

  2. C# winform 弹出窗体给父窗体传值

    Winform程序有很多传值的方法,抱着学习的态度.利用委托注册事件的方法,给窗体统一添加事件: 首先定义一个Frm_Base: namespace 任意 { public partial class ...

  3. MVVM模式下弹出窗体

    原地址:http://www.cnblogs.com/yk250/p/5773425.html 在mvvm模式下弹出窗体,有使用接口模式传入参数new一个对象的,还有的是继承于一个window,然后在 ...

  4. 【2017-05-02】winform弹出警告框是否进行增删改操作、记事本制作、对话框控件和输出输入流

    一.winform弹出警告框是否进行增删改操作 第一个参数是弹出窗体显示的内容,第二个参数是标题,第三个参数是该弹窗包含确定和取消按钮. 返回的是一个枚举类接收一下. 再进行判断,如果点的是确定按钮, ...

  5. CSS3/jQuery自己定义弹出窗体

    简单演示一下,精简了演示效果和css样式文件,更利于在项目中的实际应用 引入style.css   index.js <!DOCTYPE HTML PUBLIC "-//W3C//DT ...

  6. gridView AspNetPager 翻页时 弹出窗体关闭报错

    gridView AspNetPager 翻页后,你右击刷新或F5会发现弹出一个刷新页面. 这是因为默认翻页都是用dopostback方式回发的.因为这时的页面已经不是原来的页面.所以会弹出提示. 这 ...

  7. Ext入门学习系列(二)弹出窗体

    第二章 弹出窗体 上节学习了Ext的环境搭建和最基本的一个操作——弹出对话框,作为一个引子,本节讲述如何弹出一个新窗体,从实例讲解Ext的基本运行原理. 一.Ext的窗体长什么样? 先来看看几个效果, ...

  8. C#利用API制作类似QQ一样的右下角弹出窗体

    C#利用API制作类似QQ一样的右下角弹出窗体 (2009-03-21 15:02:49) 转载▼ 标签: 杂谈 分类: .NET using System;using System.Collecti ...

  9. EBS OAF开发中实现參数式弹出窗体

    EBS OAF开发中实现參数式弹出窗体 (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处:否则请与本人联系,违者必究) 概览 參数式弹出窗体和嵌入式弹出窗体不一样,它拥有独立 ...

随机推荐

  1. Java基于opencv实现图像数字识别(五)—投影法分割字符

    Java基于opencv实现图像数字识别(五)-投影法分割字符 水平投影法 1.水平投影法就是先用一个数组统计出图像每行黑色像素点的个数(二值化的图像): 2.选出一个最优的阀值,根据比这个阀值大或小 ...

  2. python基础(六)

    一.内置函数 # input()# type()# len()# print()# enumerate()# list()# dict()# tuple()# set()# str()# int()# ...

  3. 微信小程序生成二维码工具

    实现的效果 使用(非自适应) 完整代码请参考网址里https://github.com/tomfriwel/weapp-qrcode 页面wxml中放置绘制二维码的canvas: <canvas ...

  4. Python练习五

    1.用文件操作的方式,创建登录注册功能,允许用户输错三次. user = input("请输入你要注册的用户名:") password = input("请输入你要注册的 ...

  5. 各种BUG

    1.下载VS2005,版本太低和win10不好兼容 2.由于提前下载好了,visual studio2010,在下载VS2012过程中提示说检测到要更新VS2010才可以,百度后,返回安装上一步,取消 ...

  6. ionic页面间跳转的动画实现

    1. 在<ion-view>标签中加入: nav-direction="back"或nav-direction="forward" 2.用$stat ...

  7. ANSYS中的阻尼damper

    详情请见链接: ANSYS中的阻尼 ANSYS动力学分析中的阻尼

  8. Mvc Session 设置以后再构造函数中取值时为null问题

    在登录界面写了一个session在 别的页面的构造函数中获取始终未null  后来改成 System.Web.HttpContext.Current.Session["User"] ...

  9. java8_api_jdbc

    jdbc-1    jdbc的概念    驱动的分类    连接oracle数据库        与任何表格数据源交互        代码编写步骤        加载驱动            Cla ...

  10. kafka connect 使用说明

    KAFKA CONNECT 使用说明 一.概述 kafka connect 是一个可扩展的.可靠的在kafka和其他系统之间流传输的数据工具.简而言之就是他可以通过Connector(连接器)简单.快 ...