首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有后台工作人员的c#进度条

没有后台工作人员的c#进度条
EN

Stack Overflow用户
提问于 2014-07-10 00:31:27
回答 1查看 1K关注 0票数 1

我正在使用COM-automation将数据写到一个已经打开的Word文档中。

由于这个操作需要相当长的时间,所以我想向用户显示一个进度条。

不可能在后台工作者中进行数据写出,因为即使实现了MessageFilter,这也会导致Word应用程序抛出异常rpc_e_servercall_retrylater。我了解到这是因为前台线程与后台线程通信有困难。

有没有可能反过来使用新的线程来显示进度条呢?我尝试打开一个只包含进度条的新winform,并在它自己的线程上打开它,但它没有更新。

其他想法?

EN

回答 1

Stack Overflow用户

发布于 2014-07-10 03:25:28

这里有一个小片段,希望能对你有所帮助

代码语言:javascript
复制
 private void BackgroundWorker2_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
   string S = Convert.ToString(e.UserState);
   Label1.Text = S;
   ProgressBar1.PerformStep();
   S = null;
}




 Private Sub BackgroundWorker2_ProgressChanged(sender As Object, e As ProgressChangedEventArgs) Handles BackgroundWorker2.ProgressChanged
    Dim S As String = CType(e.UserState, String)
    Label1.Text = S
    ProgressBar1.PerformStep()
    S = Nothing
End Sub
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24659153

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档