由于VB6我很少在C#中使用DoEvents()方法。
我现在需要为同样的目的使用相同的功能
我注意到人们使用此功能(Application.DoEvents Method ):
Application.DoEvents()
但这适合Windows窗体。
现在我正在使用WPF。
WPF中是否有类似的方法?
或许我不应该再使用这种方法了?
感谢。
答案 0 :(得分:5)
或许我不应该再使用这种方法了?
此。
基本上,使用Application.DoEvents()
几乎总是表明你有一个长期运行的任务应该在不同的线程上执行,回调到UI线程需要UI访问的地方。
Application.DoEvents()
基本上是人们在不想花时间做正确事情时使用的黑客 - 至少在绝大多数情况下都是如此。
有多种方法可以编写与UI交互的长时间运行的任务,具体取决于您使用的语言/框架的版本以及长期运行的任务所包含的内容。要考虑的选项:
BackgroundWorker