My program is split in two parts:
- A client, in Windows Forms.
- A server, made with WCF on a remote web server (IIS).
The client will be used my many different users, in same times.
I have many DataGridView in my client. Those DataGridView are bind to (different) generic list of objects provided by the web service.
I need to refresh the content of those DataGridView quite frequently. I use a timer on the client that call a refresh method.
BUT my problem is: if I use Invalidate(), just the content of current displayed row are updated; if another use remove or add a new object (row), current user won’t see it.
If I refresh the data with rebinding the data, the current selection is lost… Imagine the nightmare if the user was updating data… (yes I could stop the timer when the user edit a cell and restart when user has done his changes, but I hope to find a better method!).
Anybody have see problems like those? Anyone have suggestions?
thank you
What you are describing is a distributed system. You need to implement locks and synchronisation for this kind of software. Sure you can leave it out, but your result will be crap.
Sorry to dump this on you but your problem is way bigger than you think.