The built-in commands in the RadSpreadsheet context menu does not execute. Commands such as Delete Row, Delete Column, Hide Row, and Unhide Row/Column appear in the context menu, but clicking them has no effect.
The issue is reproducible in the official demo site.
Steps to reproduce
Actual result
The menu closes, but the selected built-in command is not executed.
Expected result
The selected command should execute and update the spreadsheet, for example, deleting the selected row or column or changing its visibility.
Hi Miika,
Thank you for reporting this issue and for providing the reproduction steps.
We were able to reproduce the problem in the official RadSpreadsheet demo. The issue affects the built-in context-menu commands, including Delete Row, Delete Column, Hide Row, and Unhide Row/Column.
The root cause is related to the legacy Kendo Spreadsheet context menu using different jQuery instances when storing and reading the command action. As a result, the selected command is not resolved and the menu closes without executing it.
We have managed to address the issue and the fix will be included in an upcoming 2026 Q4 release of Telerik UI for ASP.NET AJAX.
As a temporary workaround, the context-menu handler can be overridden to store the command action through the Kendo jQuery instance:
<telerik:RadSpreadsheet runat="server" ID="RadSpreadsheet1">
</telerik:RadSpreadsheet>
<script type="text/javascript">
(function () {
var kendo = window.$telerik && window.$telerik._kendo;
if (!kendo ||
!kendo.spreadsheet ||
!kendo.spreadsheet.ContextMenu) {
return;
}
var contextMenu = kendo.spreadsheet.ContextMenu;
if (!contextMenu.fn || contextMenu.fn._radSpreadsheetContextMenuPatched) {
return;
}
var commandsDictionary = {
CommandCut: 'cut',
CommandCopy: 'copy',
CommandPaste: 'paste',
CommandHideRow: 'hide-row',
CommandUnhideRow: 'unhide-row',
CommandHideColumn: 'hide-column',
CommandUnhideColumn: 'unhide-column',
CommandDeleteRow: 'delete-row',
CommandDeleteColumn: 'delete-column'
};
contextMenu.fn._onItemClick = function (sender, eventArgs) {
var item = eventArgs.get_item();
var element = item.get_element();
var action = commandsDictionary[item.get_value()];
kendo.jQuery(element).data('action', action);
this.trigger('select', {
item: element
});
};
contextMenu.fn._radSpreadsheetContextMenuPatched = true;
})();
</script>The workaround must be registered after the Telerik and Kendo scripts have been loaded.
Regards,
Rumen
Progress Telerik