相关疑难解决方法(0)

使用control.begininvoke后,UI仍然没有响应

我做了一个C#winforms应用程序.现在我有一个有很多按钮的表单,它调用了大量的数字运算函数,其输出我在文本框中更新.我调用textbox.begininvoke()方法,我将委托传递给更新文本框中文本的函数,但是当文本很大时,表单没有响应,因为我无法单击取消按钮.是不是有任何方式使整个表单保持响应,并且更新也不断发生.我必须向用户显示数据,因为它即将到来,我无法缓冲整个事情并最终显示.我还尝试实现自己的缓冲区并以特定的时间间隔显示数据,这对于少量文本很有用,但是大量的UI只是没有响应.任何帮助?谢谢

更新问题是因为出现了一些混淆

  • 我在一个单独的线程上调用了数字运算功能.
  • 只要数据到达以更新文本框,该数字运算函数就会调用control.begininvoke函数
  • 我的UI得到显示,我看到输出即将来临,但是当数据量巨大时,我无法做任何其他活动,尽管我仍然可以看到UI

c# begininvoke

2
推荐指数
2
解决办法
3533
查看次数

标签 统计

begininvoke ×1

c# ×1