Hi All,
Has anyone managed to improve performance of datatables in the IE Web Browser control (hosted in a .NET WinForms app)? My basic use case is to update 288 cells of a grid without about 70 rows. Peformance is fine in the browser, around:
Chrome: 15ms
Firefox: 45ms
IE9: 87ms
Activex X IE9 Control: 180ms
From what I can gather, the control has known perf issues when traversing the DOM, something about adding all possible attributes to every element, regardless of whether they're used.
Looking at the profiler results in all the browsers, the methods taking the time are
Those all pretty reasonable methods to be taking up the time, and as I said, in the browser they perform fine, but in the web control they struggle. Any tips on optimizing them for the web control, or if anyone has already done so would be much appreciated.
My code for updating is:
Steve
Has anyone managed to improve performance of datatables in the IE Web Browser control (hosted in a .NET WinForms app)? My basic use case is to update 288 cells of a grid without about 70 rows. Peformance is fine in the browser, around:
Chrome: 15ms
Firefox: 45ms
IE9: 87ms
Activex X IE9 Control: 180ms
From what I can gather, the control has known perf issues when traversing the DOM, something about adding all possible attributes to every element, regardless of whether they're used.
Looking at the profiler results in all the browsers, the methods taking the time are
fnUpdate (288 calls)
_fnGetCellData (3128 calls)
_fnGetTdNodes (288 calls)
_fnGetRowData (288 calls)
Those all pretty reasonable methods to be taking up the time, and as I said, in the browser they perform fine, but in the web control they struggle. Any tips on optimizing them for the web control, or if anyone has already done so would be much appreciated.
My code for updating is:
var el = $scope.findGridElement(productId, grid); if (el) { var pos = grid.fnGetPosition(el); grid.fnUpdate(cellValue, pos, column, false, false); }where el is the <td> and is retrieved using document.getElementById.
Steve