圆滚滚的胖狸 2015-06-02 11:57 采纳率: 80%
浏览 2104
已采纳

C# 中需要延时,该怎么做.求解

C#在操作word时,将RichTextBox内容粘贴到word时失败,昨天经网友提醒,发现是延时的.
于是今天在copy()之后,延时几秒中以达到效果.但怎么也不成功.求教

 string strDirectory = System.IO.Directory.GetCurrentDirectory().ToString();
                string strTempFileName = strDirectory + @"\temp000.docx";
                Clipboard.Clear();

                _Word._Application _wardApp = new _Word.Application();
                _wardApp.Visible = false;
                _Word._Document _wordDoc = null;
                object missing = System.Reflection.Missing.Value;
                object filename = strTempFileName;
                object readOnly = false;
                object isVisible = false;
                _wordDoc = _wardApp.Documents.Add(missing, missing, missing, isVisible);
                _Word.Paragraph _wordPara = _wordDoc.Content.Paragraphs.Add(ref missing);
                _Word.Range _wordRange = _wordDoc.Paragraphs[1].Range;

                #region 将RichTextBox的内容存储到临时word文档中
                try
                {       
                    //建立word工作

                    rtxbContent.SelectAll();
                    rtxbContent.ClipboardCopy();

                                        **//暂时使用了一个弹出窗口解决的**.                                       
                    MessageBox.Show("正在生成文件,请点击以确认","确信生成");



                    _wordDoc.Activate();       

                    _wordRange.Paste();   

                }
                catch(Exception ex)
                {
                    MessageBox.Show(ex.ToString(), "失败啦!<( ̄︶ ̄)>");
                    _wordRange.Paste();     

                }
                //保存word文档
                _wordDoc.SaveAs2(filename, missing, missing, missing, missing, missing, missing, missing,
                    missing, missing, missing, missing, missing, missing, missing, missing, missing);
                //退出word
                _wardApp.Quit(true, missing, missing);

                MessageBox.Show("保存成功", "成功啦");


                #endregion
  • 写回答

4条回答

  • qq_24724387 2015-06-02 12:53
    关注

    Thread.Sleep(10*1000); 1秒=1000毫秒,可以改成10000。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决