在c#运行时更新UI

本文关键字:UI 更新 运行时 | 更新日期: 2023-09-27 18:11:22

我创建了一个c# Winforms应用程序。

在这个应用程序中,我在ShowDialog模式下打开了一个表单,当我点击OK按钮时,它开始将联系人从GridView导入到数据库(行数可能高达15,000)。

问题是,当导入过程开始时,我在循环中增加progressBar的值,但如果表单失去焦点,我再次将焦点设置为该表单,那么进度条不会更新。

当窗体失去焦点时,我如何更新进度条?

在c#运行时更新UI

偶尔使用Application.DoEvents(),但你真的应该使用BackgroundWorker来防止这种情况的发生