调用委托单独的类进度条

本文关键字:单独 调用 | 更新日期: 2023-09-27 18:07:14

我正在从一个单独的项目加载大量数据,并希望向用户显示进度。

因此,当每个数据块被加载时,我想将该事件从框架类传递回主窗体,然后传递给单独的对话框进度条窗体。

会有三种东西被传递回来:

  1. 状态消息
  2. 当前状态计数
  3. 待处理项目总数。

我只需要知道如何传递这些信息,以及委托应该去哪里。

List<myObject> objListFoo = new List<myObject>();
FormLoadingProgress frmProgress = new FormLoadingProgress();
frmProgress.ShowInTaskBar = false;
frmProgress.Show();
Framework.Foo objFoo = new Framework.Foo();
objFoo.DoEvent(); // <-- This takes 10-60 seconds
objListFoo = objFoo.GetData();
frmProgress.Close();
frmProgress.Dispose();

调用委托单独的类进度条

下面的示例显示了您需要做的事情。

在该示例中,您唯一需要调整的是对ReportProgress的方法调用。在您的情况下,您可能想要调用这个版本,它接收一个int和一个对象。在这个对象中,你可以传递任何你需要的信息。状态信息,2。当前状态计数,3。待处理项目总数