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