c# - Refresing data in DataGrid is too "Flashy" -


i have method in dispatchertimer refreshes datagrid's data every 3 seconds. (3 seconds testing purposes)

the thing every time datagrid gets refreshed, clears data , loads data again database(obviously). issue creates "flashy" effect each time data loads, because of rows being cleared , re-loaded datagrid.

so question is, (after have taken @ code below) there better way of loading data again , again without creating flashing effect in datagrid?

my method call data wcf service:

public async task loadtrucks() {     using (truckserviceclient service = new truckserviceclient())     {         list<clientitems> truckitems = new list<clientitems>();         if (dgviewprojects.items.count <= 0)         {             foreach (var item in await service.gettrucksasync())             {                 truckitems.add(new clientitems                 {                     truckquoteid = item.quoteid,                     truckchassismanufacturer = item.chassismanufacturer,                     truckchassismodel = item.chassismodel,                     truckstatus = item.status,                     truckjobnumber = item.jobnumbers,                     truckaddedby = item.addedby,                     truckclient = item.clientname                 });             }         }         dgviewprojects.itemssource = (truckitems.toarray());     } } 

here call loadtrucks() method , create dispatchertimer:

private async void dgviewprojects_loaded(object sender, routedeventargs e) {     await loadtrucks();      var timer = new dispatchertimer();     timer.interval = timespan.fromseconds(3);     timer.tick += new eventhandler(async (object o, eventargs t) =>     {         dgviewprojects.itemssource = null;         await loadtrucks();     });     timer.start(); } 

check if item given key exists , update properties instead of switching out items.

(this idea in terms of performance, current logic requires complete recreation of data grid contents.)


Comments

Popular posts from this blog

jOOQ update returning clause with Oracle -

java - Warning equals/hashCode on @Data annotation lombok with inheritance -

java - BasicPathUsageException: Cannot join to attribute of basic type -