In the scpreadsheet you can use controls like dropdowns & datepicker , but should be helpful if user could to customize the design and behavior. For example, the dropdown and any other control needs be opened since an icon at right that is displayed over the next column, As user i would like to choose how i want to be displayed the control: Open clicking on it, set expand direction, styles, etc.
Additional functionality for: -- Conditional Formatting -- coloring of cells, for example based upon a value and then be able to import from excel, and export back out. -- Data Validation (dropdowns). Also be able to import and export back out.
When using the bottom right corner of a cell to batch copy values across a range by dragging the corner, an error popup appears if a disabled cell is found inside the range that was dragged into. It is possible to reproduce this with this demo: https://demos.telerik.com/kendo-ui/spreadsheet/disabled-cells 1. Set the quantity column to disabled. 2. Select B3. 3. Drag the bottom right corner of B3 to D3. 4. See error: "Destination range contains disabled cells." There should be an option to allow that to copy into any enabled cells in that range and ignore the disabled ones.
1. Save Excel workbook to folder on server (the Excel file can be re-purposed in many ways) 2. Better ways to send sheet data back to controller ... more JSON serialization options, csv, etc.
The Spreadsheet widget is a good start, here are some additional ideas: 1) Ability to assign specific data columns to a spreadsheet column in DataSource data binding and format them. 2) Control tools that can be visible in the toolbar as well as add custom toolbar items/tabs 3) Enabled/Disable or Show/Hide tabs in tool bar. Alternatively, be able to add custom tabs and toolbar items as well. 4) Events! need more events. Cell selected, Range selected, column selected, etc... 5) Disable/Enable certain commands (such as Cut, Copy, Paste, Delete) based on #4 or other criteria. Useful if I do not want specific cell or column data copied or deleted.
It should be possible to define cell types (or types that are valid for the entire column) like: - Booleans (which will result in showing check boxes inside the cells)
I have a first example using the Kendo Toolbar widget and I was able to get an Angular button rendered in the toolbar: http://dojo.telerik.com/ucIfin When I tried to do the same thing in the Kendo Spreadsheet widget toolbar, it failed to compile my template: http://dojo.telerik.com/UseWI In general Angular directives are not compiled properly when specified in the template of a Spreadsheet Toolbar item. I am aware of a workaround for the kendo-button specific case, but I would like the template to work for custom Angular directives as well.
Custom editors are great! But often when you have a custom editor, you want to restrict data entry to only use that editor, and not free-form typing in the cell. You can prevent free-form typing in the cell by disabling the cell, but then the custom editor button is no longer available. Suggestion is to still show custom editor button even if cell is disabled, perhaps with an additional setting; so that you could optionally not show the custom editor if the cell is disabled, since often a disabled cell should prevent any kind of modification.
Allowing custom editors to be inline would be very helpful. In particular, inline editors using other Kendo controls (e.g. masked textbox, numeric textbox) should be possible.
DefaultCellStyle property in spreadsheet has a field “Wrap”, but doesn’t have a field “Format”. For example, if I need to process all cells as text, I must set the field “Format” on a client side: sheet.range("A1:AX200").wrap(true).format("@"); It works. But the initialization of the range ("A1:AX200") takes time… It is not very fast… It would be better to have the field “Format” in the DefaultCellStyle property in spreadsheet…
Currently if you access cells range programmatically, you can set background color, text color etc. It would be good to have the way to set classes or to get the DOM of the range. Another option would be to get DOM or set a class to individual cells (e.g. via range.forEachCell).