I think it would be really cool to include a search bar in the filter window, as implemented in Excel (Please find attached a screenshot for demonstration). This is a very useful functionality, as there may be too many options to choose from is the filter is added to subject ID, which could result in thousands IDs.
Add an event that indicates when a hyperlink is clicked.
Returns a Range object that represents the current region. The current region is a range bounded by any combination of blank rows and blank columns. If we want to be consistent with MS Excel we should implement this property. It is useful for many operations of a region such as filtering(selecting one cell and executing the Filter command should apply it to the current region), sorting, selecting all and etc. This document will be useful: https://docs.microsoft.com/en-us/office/vba/api/excel.range.currentregion.
The functionality would allow to zoom the print preview and scroll the resulting viewport. A partial implementation of the zooming functionality can be found in the attached file to provide a starting point for a custom implementation.
The PrintPreviewControl refreshes its preview content on change in the SheetPageSetup object. This method would allow on-demand update. At the moment this can be achieved by changing something in the page setup and restoring it. bool printGridlines = this.spreadsheet.Workbook.ActiveWorksheet.WorksheetPageSetup.PrintOptions.PrintGridlines; this.spreadsheet.Workbook.ActiveWorksheet.WorksheetPageSetup.PrintOptions.PrintGridlines = !printGridlines; this.spreadsheet.Workbook.ActiveWorksheet.WorksheetPageSetup.PrintOptions.PrintGridlines = printGridlines;
In MS Excel, the users can choose between showing the original size of the page and fit it in the window. Expose a similar option in RadSpreadsheet as well.
Currently, to change the title of the ribbon, the users need to replace RadSpreadsheetRibbon with its XAML code. Expose a property allowing to do this change directly from RadSpreadsheetRibbon.
Allow loading of dialogs (SpellCheckAllAtOnce and SpellCheckWordByWord) different than the default ones through MEF. Use-cases: set different Width and Height, hide buttons (e.g. AddToDictionary), etc.
In MS Excel, the users have the option to specify that the data contains a header row. When this option is enabled, the first row of the column is not included in the sorted range. Implement this option in RadSpreadsheet as well.
Currently, changing the sheets performs heavy calculations on the UI thread. This does not allow to perform any other UI task and the busy indicator cannot be shown before all layers are rendered.