我有一个必须在 UI 线程上运行的长时间运行的方法。(Devex - gridView.CopyToClipboard()
)
我不需要 UI 在复制时做出响应,并且我添加了一个启动屏幕,这样用户就不会感到无聊。
当我运行这个程序时,一切都很好。
当我运行另一个程序时,麻烦就开始了,而该程序又启动了一个新进程并在其上运行该程序。复制标题几秒钟后显示(未响应)并且鼠标光标显示忙碌,它当然会在几秒钟内清除但我想摆脱它,因为它给用户一种误解的感觉程序有故障。
有没有办法设置我创建的流程的“超时”?
编辑:
主程序调用如下代码:
fillsProcess = new Process();
fillsProcess.StartInfo.FileName = Application.ExecutablePath;
fillsProcess.Start();
在 fillsProcess 中,当单击某个按钮时,将调用以下代码:
gridViewToCopy.CopyToClipboard();
这行代码需要一段时间来处理,几秒钟后,fillsProcess 的窗口看起来没有响应,因为此方法在 UI 线程上运行。
编辑第二个:
显然(而且真的很容易理解)
gridViewToCopy.CopyToClipboard();
不是导致此问题的唯一方法。许多 Devex 方法必须在 UI 线程上运行(例如数据排序、数据过滤)
因此,感谢任何提供特定解决方案(有效或无效)的人,但我原来的问题再次出现:
有没有办法改变超时时间或以某种方式控制整个“无响应”惨败?