0

我有一个绑定到数据表的超网格,我在线程(不是 gui 线程)中更新数据表。我的问题是,在更新数据表时,我是否需要将它委托给 gui 线程(以便网格上的更新发生在 gui 线程中),或者我可以简单地在任何线程中更新数据表,而基础架构网格会在正确的线程中自行更新?

我在基础设施在线帮助或文档中找不到简单问题的答案。

谢谢

4

2 回答 2

1

您需要更新 UI 线程上的数据源。Infragistics 论坛上有一些类似的讨论,例如:

于 2011-07-07T14:19:01.827 回答
1

我发现做到这一点的最佳方法是使用同步上下文对象将 .add 调用发布到 GUI 线程。

在我的情况下,我有一个类的类型为 synchronizationContext.Current 的类在初始化时设置为 synchronizationContext.Current 的属性。然后我可以调用类似的东西:

SyncContext.Post(Sub() _displaySource.Rows.Add(r) End Sub, Nothing)

当该类在不同的线程上运行并且工作正常时。没有这个,你偶尔会得到恼人的红色 X

于 2013-04-08T16:48:02.657 回答