我有一个WPF窗体和另一个类,有一些事件的网格。从我的wpf表单我订阅这些事件,我希望他们添加一些对象到我的网格,但只有我的是“调用线程不能访问此对象,因为不同的线程拥有它。”我怎样才能避免这个问题,并获得相同的功能?方法不返回控制
Q
方法不返回控制
1
A
回答
1
这已经在StackOverflow和别处讨论过了。您需要使用Dispatcher将您的访问编组回到UI线程。例如:
private void OnSomeEvent(object sender, EventArgs e)
{
// this is being called on a thread other than the UI thread so marshal back to the UI thread
Dispatcher.BeginInvoke((ThreadStart)delegate
{
// now the grid can be accessed
grid.Whatever = foo;
});
}
-1
这是一个跨线程问题。研究委托创建,以便可以安全地调用另一个线程来修改在其他线程上创建的内容。以下是有关如何进行这些线程安全调用的很好的MSDN文章。
http://msdn.microsoft.com/en-us/library/ms171728(v=vs.80).aspx
相关问题
- 1. GetChildAtPoint方法返回错误的控制
- 2. 控制器AJAX方法返回AJAX ActionLink
- 3. 控制器方法没有返回值,延长控制器
- 4. 控制器不返回PartialView?
- 5. 不返回任何视图的控制器方法
- 6. 无法从调用异步方法的控制器返回ActionResult
- 7. Java:方法不返回。 (XComponent.dispose
- 8. 角厂不返回方法
- 9. Control.Invoke方法不返回
- 10. Python方法不返回值
- 11. initWithCoder方法不返回值
- 12. addInput方法不返回
- 13. 方法不打印/返回
- 14. Rails方法返回当前的“控制器#行动”?
- 15. API控制器Post方法返回类型/值
- 16. 服务方法应该返回什么给你的控制器
- 17. 调用控制器方法并返回变量以查看
- 18. 如何指定一个控制器方法将只返回jSON?
- 19. Current_user设计方法在用户控制器外返回nil
- 20. 如何从控制器方法返回多个图像?
- 21. rails 3.1 render_to_string从控制器方法返回空字符串
- 22. 在Rails控制器上调用create方法返回所有行
- 23. 控制JsonPath的read()方法返回的数据类型
- 24. 从MVC控制器中的JsonResult方法返回JSON
- 25. 在控制器的方法,返回两个JSON对象
- 26. 从控制器方法返回帮助程序的内容
- 27. Rails的find_each方法在控制台上返回nill?
- 28. 在CakePHP中,退出或返回控制器方法的好方法是什么?
- 29. 控制器方法不叫
- 30. 弹簧控制器不返回文件
+1点,让您可以发表评论 – Aaron
这是一个重复的问题:[点击这里](http://stackoverflow.com/questions/3146942/the-calling-thread-cannot-access-this -object-because-a-different-thread-owns-it)或[here](http://stackoverflow.com/questions/5996162/the-calling-thread-cannot-access-this-object-because-a-不同线程拥有它)或约八个人:) – Kevek