调用Delegate单独的类进度条

发布于 2024-12-02 17:19:31 字数 587 浏览 0 评论 0原文

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

因此,当加载每条数据时,我想将该事件从框架类传递回主 winform,然后传递到单独的对话框进度栏表单。

将传回三件事:

  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();

I'm loading a large amount of data from a separate project and would like to display the progress to the user.

So as each piece of data is loaded, I'd like to pass that event back from a Framework Class, back to the main winform, then to the separate dialog progress bar form.

There would be three things passed back:

  1. Status message
  2. Current status count
  3. Total Items to process.

All I need to know is how to pass this information back and where the delegates should go.

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();

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一生独一 2024-12-09 17:19:31

这是一个示例,准确显示了您需要执行的操作。

在该示例中您唯一需要调整的是对 ReportProgress 的方法调用。就您而言,您可能需要调用此版本,该版本接收一个 int 和一个对象。在该对象中,您可以传入所需的任何信息(1. 状态消息,2. 当前状态计数,3. 要处理的总项目数。)

Here's an example showing exactly what you need to do.

The only thing you need to adjust in that example is the method call to ReportProgress. In your case, you'll probably want to call this version, which receives an int and an object. In that object you can pass in whatever information you need (1. Status message, 2. Current status count, 3. Total Items to process.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文