滚动文本框无法在没有焦点的情况下接收更新

时间:2018-01-29 20:13:41

标签: vb.net xaml

我有一个生产者/消费者连接,它将命令发送到远程设备并等待提示来监听响应。

收到回复后,会触发一个事件,并将收到的文本作为新行推送到滚动文本框。

大多数情况下,此工作正常并显示消息。但是,在没有附加调试器的情况下运行我的代码版本时,文本输出不会更新,或者有时会非常缓慢地更新,除非用户正在主动单击表单的该区域,在这种情况下它会按预期工作。

我认为这与用户关注有关,但我不确定。调试时似乎永远不会出现这个问题。

1 个答案:

答案 0 :(得分:1)

更新文本框后

Repaint表单。一个简单的假设是,这会自动发生,但有时操作系统会考虑其他优先级来管理重新绘制。手动重绘可以解决问题。

我没有在我面前打开IDE,但是从内存中可以repaint文本框而不是整个表单 - 如果文本框经常更改或者文本框发生变化,这可能有助于闪烁形式庞大而复杂。