Winforms:可观察。计时器引发InvalidOperationException
我正在使用winforms和被动扩展Winforms:可观察。计时器引发InvalidOperationException,winforms,system.reactive,Winforms,System.reactive,我正在使用winforms和被动扩展 我在表单中使用可观察计时器 当计时器触发时,在回调内部,当尝试调用任何winform控件上的方法时,会引发InvalidOperationException 我如何解决这个问题 这是我的代码: Observable.Timer(TimeSpan.FromSeconds(0), TimeSpan.FromSeconds(2)) .Subscribe((e) => { XXXXX(); }); 您需要使用
我在表单中使用可观察计时器
当计时器触发时,在回调内部,当尝试调用任何winform控件上的方法时,会引发InvalidOperationException
我如何解决这个问题 这是我的代码:
Observable.Timer(TimeSpan.FromSeconds(0), TimeSpan.FromSeconds(2))
.Subscribe((e) =>
{
XXXXX();
});
您需要使用
ObserveOn(form)
方法
Subscribe()方法之前添加ObserveOn(form)
:
Observable
.Timer(TimeSpan.FromSeconds(0), TimeSpan.FromSeconds(2))
.ObserveOn(this)
.Subscribe((e) =>
{
UpdateProcessStatus();
});
显示的表单状态是什么?检查表格标志