我有一个绑定到数据表的超网格,我在一个线程(不是一个gui线程)中更新数据表。我的问题是,在更新数据表时,我需要在gui线程上委托它(以便在gui线程中发生网格更新)或者我可以简单地在任何线程中更新数据表,并且infragistics网格负责在正确的线程中更新自己吗?
我无法在infragistics在线帮助或文档中找到简单问题的答案。
感谢
答案 0 :(得分:1)
答案 1 :(得分:1)
我发现这样做的最好方法是使用synchronizationContext对象将.add调用发布到GUI线程。
在我的情况下,我的类具有类型为synchronizationContext的属性,我在初始化类时设置为SynchronizationContext.Current。然后我可以打电话给:
SyncContext.Post(子() _displaySource.Rows.Add(r)的 End Sub,Nothing)
当类在不同的线程上运行时,它工作正常。如果没有这个,你偶尔会得到恼人的红色X