很多时候,我们需要做一个进度相关的对话框,以显示程序运行的某些状态,做进度对话框的方法很多,我也做了N个版本
今天发一个最简单的版本,这是通过使用Microsoft.VisualBasic.dll提供的Microsoft.VisualBasic.MyServices.Internal.ProgressDialog对象
可惜这个对象声明为internal的,要使用它只能通过反射

代码如下

using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms; namespace WindowFormApplication { class ProgressDialogWrapper { const string typeName = "Microsoft.VisualBasic.MyServices.Internal.ProgressDialog, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; const string userHitCancelEventHandlerTypeName = "Microsoft.VisualBasic.MyServices.Internal.ProgressDialog+UserHitCancelEventHandler, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; Type typeofProgressDialog; Form form; System.Reflection.PropertyInfo labelTextProperty; System.Reflection.MethodInfo showProgressDialogMethod; System.Reflection.MethodInfo incrementMethod; System.Reflection.EventInfo userHitCancelEvent; System.Reflection.FieldInfo m_CanceledField; System.Reflection.MethodInfo indicateClosingMethod; System.Reflection.MethodInfo closeDialogMethod; public event EventHandler UserHitCancel; delegate void Method1(int param); delegate bool IsCancel(); delegate void SetTextCall(string text); public ProgressDialogWrapper() { typeofProgressDialog = Type.

使用Microsoft.VisualBasic提供的进度对话框相关推荐

  1. 当进度对话框和后台线程处于活动状态时,如何处理屏幕方向变化?

    我的程序在后台线程中执行一些网络活动. 在开始之前,它会弹出一个进度对话框. 该对话框在处理程序上关闭. 这一切都可以正常工作,除非对话框打开(并且背景线程正在运行)时屏幕方向发生变化. 此时,应用程 ...

  2. android自定义dialog开源库,android-dialog: 此框架提供五种对话框的显示,并支持对话框的扩展,目的是为了提供对话框的统一管理,并提供对话框显示的公共接口。...

    android-dialog 此框架提供七种对话框的显示,并支持对话框的扩展,目的是为了提供对话框的统一管理,并提供对话框显示的公共接口. LoadingDialog:正在加载对话框 MessageD ...

  3. progressdialog进度框_使用ProgressDialog创建进度对话框

    ProgressDialog代表了进度对话框,程序只要创建ProgressDialog实例,并将它显示出来就是一个进度对画框.使用ProgressDialog创建进度对话框有如下两种方式. ①如果只是 ...

  4. C#对Microsoft.VisualBasic My对象兰台妙选【月儿原创】

    C#对Microsoft.VisualBasic My对象兰台妙选 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.4.24   ...

  5. [入门]C#语法里面,如何使用 VB的常用函数?(using Microsoft.VisualBasic)

    这里是我的文章备份 原文请看: http://www.dotblogs.com.tw/mis2000lab/archive/2011/10/24/46162.aspx [入门]C#语法里面,如何使用 ...

  6. C#对Microsoft.VisualBasic My对象兰台妙选

    转自:http://tmsoft.lsxy.com/index.php?load=read&id=224 1.添加引用 2.引用Microsoft.VisualBasic 命名空间 3.所有的 ...

  7. C# 调用 Microsoft.VisualBasic.Collection

    问题 Dim d As New Collection  d.Add("Northsnow")  d.Add("塞北的雪")  d.Add("http: ...

  8. Android学习笔记(九)——更复杂的进度对话框

    显示操作进度的对话框 1.使用上一篇创建的同一项目.在activity_main.xml文件里加入一个Button: <Buttonandroid:id="@+id/btn_dialo ...

  9. 利用Microsoft.VisualBasic dll来修改系统时间

    C# 里面貌似没有什么好的方法 用WMI会Access Denied,用VB成功. Code using System; using Microsoft.VisualBasic; namespace  ...

最新文章

  1. Mysql 知识点总结(持续更新)
  2. CodeProject 文章概览:ASP.NET 模板相关内容
  3. py-faster-rcnn + ZF 实现自己的数据训练与检测(二)
  4. netcore - MVC的ActionFilter的使用
  5. React-router的基本使用
  6. SQL Server -- SQL NULL值,ISNull(),Oracal NVL(),MYSQL IFNULL(),COALESCE()
  7. 基于Java的账号、密码登陆页面及验证
  8. 硬件平台选型(1)---SDM 660 VS SDM670
  9. css中调整高度充满_css - DIV高度怎样充满容器?
  10. Sql执行计划,优化sql必备!
  11. JAVA面经【来源网络转载】
  12. 第五课:实现花样流水灯
  13. 3d打印测温模型单塔双塔tt pro专业版测温模型stl下载
  14. python 爬取微博展开全文数据 BeautifulSoup
  15. pcs增加mysql资源_PCS命令配置corosyncpacemaker群集操作步骤.doc
  16. 小陈Java学习笔记0810
  17. 常用软件(Android)
  18. Object.keys()、Object.values()、Object.entries()的用法
  19. 【二】微信开发中的https
  20. Java编程:浅析泛型类型中的桥接方法

热门文章

  1. MTK 人像双摄虚化导通guide
  2. CSS基本选择器及优先级顺序
  3. Java项目实战:根据出生日期计算(判断)星座
  4. 京东价格监控软件开发技术探讨十五:C#下如何实现推送消息到微信群
  5. MyEclipse8.6 MyEclipse注册 破解
  6. 2022阿里4.22算法笔试题
  7. C++小学期作业,信息管理系统(源代码)
  8. Mysql学习笔记(基础)
  9. Java中Calendar对于日期的控制详解--DAY_OF_MONTH, DAY_OF_YEAR, DATE 的区别
  10. 城乡供水一体化解决方案