【问题标题】:asynchronous process notifies some form about its progress异步进程以某种形式通知其进度
【发布时间】:2012-03-03 03:49:48
【问题描述】:

我正在开发一些我想在其他应用程序中重用并获得良好体验的表单。此表单包含进度条和标签。另一方面,我有异步过程。我想绑定这些东西,得到通用的形式,可以通知一些异步过程的变化。观察者适合这个目的吗,伙计们?

【问题讨论】:

  • 我想绑定这个东西,得到通用形式,请详细说明。你具体想绑定什么?
  • 我想绑定表单(这是一个只有进度条和标签的简单表单)和这个异步过程。
  • 这真的是我的问题。您希望表单的事件在异步线程上触发吗?也许我一个人,但我很难弄清楚你在这里真正想要完成什么。
  • 对不起我的英语。我只想制作可重复使用的表格,我可以在将来使用,但我不知道如何正确地做到这一点。是的,我希望异步进程触发表单的事件。
  • 报告进度条只是一个 UI 组件,当您更改属性时会更新。它在进程或线程方面没有特殊功能。在这方面,它与在控制台中输出“10% 完成”相同。所以我猜你要问的是异步进程如何将事件触发到表单。见stackoverflow.com/questions/2022063/…

标签: c# .net winforms design-patterns observer-pattern


【解决方案1】:

后台工作人员没有事件“onCompletionChange”(或类似事件)吗? 只要您使用的是 BackgroundWorker,您就可以将该事件链接到主线程函数。 否则,这是来自谷歌search 的示例(第一个链接):
“C# 异步进度”。

【讨论】:

  • 我已经实现了异步进程。而且它不是后台工作人员。我只是想选择正确的方式来制作可重用的表单,它可以在许多应用程序中使用,通知应用程序的一些进展。
猜你喜欢
  • 2014-09-01
  • 2011-07-17
  • 2019-07-28
  • 2021-01-27
  • 2012-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-15
相关资源
最近更新 更多