We use the Telerik RadGrid in our application and load the data and columns client side.
We inherit from the Telerik grid columns
internal class xxxButtonGridBoundColumn : GridButtonColumn
internal class xxxFilterGridBoundColumn : GridBoundColumn
as part of our grid refresh we call the following JavaScript
fixColumnType: function () {
// force column types to be RAD types
var TelerikGridColumns = this.get_masterTableView().get_columns();
for (var i = 0; i < TelerikGridColumns.length; i++) {
var column = TelerikGridColumns[i];
switch (column._data.ColumnType) {
case "xxxButtonGridBoundColumn":
column._data.ColumnType = "GridButtonColumn";
break;
case "xxxFilterGridBoundColumn":
column._data.ColumnType = "GridBoundColumn";
break;
This is called before the grid.databind() method and seems to work.
The bug is that the GridButtonColumn reverts back to xxxButtonGridBoundColumn and doesn't bind to the data
(GridBoundColumn still works ok)
This was working in version 2013:3:1114:35 but broken in future versions including the most recent 2017
Any help in why this happens would be appreciated