【发布时间】:2012-10-04 19:42:43
【问题描述】:
我的程序分为两部分:
- Windows 窗体中的客户端。
- 在远程 Web 服务器 (IIS) 上使用 WCF 创建的服务器。
客户端将同时被我的许多不同用户使用。
我的客户端中有很多 DataGridView。这些 DataGridView 绑定到 Web 服务提供的(不同的)通用对象列表。
我需要经常刷新那些 DataGridView 的内容。我在客户端上使用了一个计时器来调用刷新方法。
但我的问题是:如果我使用 Invalidate(),只会更新当前显示行的内容;如果另一个用户删除或添加一个新对象(行),当前用户将看不到它。 如果我通过重新绑定数据来刷新数据,则当前选择会丢失...想象一下如果用户正在更新数据,那将是一场噩梦...(是的,我可以在用户编辑单元格时停止计时器并在用户完成他的操作时重新启动变化,但我希望找到更好的方法!)。
有人遇到过这样的问题吗?有人有建议吗?
谢谢
【问题讨论】: