有一个固定的班级计时器Timer
。每次调用一个方法来计算时间。并且同样的方法调用另一个方法来更新 TextBox 中时钟的值。但是这里弹出一个错误:
"System.InvalidOperationException: "Вызывающий поток не может получить доступ к данному объекту, так как владельцем этого объекта является другой поток."
我在 Internet 上读到这是因为在 wpf 中您无法更改某些类的值。但是找到的所有解决方案都不合适,因为我有 .NET 4。
我该怎么办?
我解决了我的问题。
每个UIElement都有一个属性
Dispatcher
。它已经有几个方法BeginInvoke
和Invoke
,您需要将一个不带参数的委托传递给它们。并且已经在其中,更改 wpf 元素。我的代码示例
P.S. BeginInvoke和 Invoke 的不同之处在于 BeginInvoke 异步执行工作,而 Invoke 同步执行