What's New in Spread.NET v17
Spread.NET v17 is here and includes many new exciting features and enhancements.
Spread Ribbon Control
The Spread Ribbon Control is a new addition to Spread.NET, allowing you to insert the Designer ribbon into your application for use with Spread.NET. This includes contextual ribbon tabs, buttons, menus, and Error Handling. You simply create the ribbon bar instance and attach it to an FpSpread instance:
You can also override built-in commands using the CommandExecuting and CommandExecuted events and manually execute commands using the ExecuteCommand function.
Header and Footer Wrap Text
With this release, Spread .NET provides the ability to wrap text for Column headers and footers with the WrapText2 function.
Printing has been updated in Spread.NET to include even more features. These are:
- Different Header/Footer Printing – Choose how to print headers and footers, like just the first page or odd and even pages.
- Exporting Print Header/Footer Images – Headers and Footers that have images in them can be exported. If there are multiple images, only the first image will be exported.
- Collated/Uncollated Option – This new option lets the user choose whether to print pages as a complete set or multiple copies of each page.
- Excel-Compatible Printing – Printing behavior can now be changed like Excel, so if it is set to true the printing result will be similar to Excel but not old versions of Spread.NET. While all behavior will not be exactly the same as Excel, we are continuing to change and add behavior to make it more like Excel. This also does not support printing to PDF if this option is true.
Saving to HTML
Since .NET and .NET Core were updated, data could not be saved to HTML using the SheetView.SaveHtml function anymore. As a replacement, this is now supported via the IWorksheet.SaveAs and IWorkbook.SaveAs functions. These functions let you save the workbook or worksheet to an HTML format. This is limited to the cell data only.
Spread .NET now supports built-in themes similar to Excel. These can be used to change the appearance of a worksheet, including color and font. You can customize themes as well, in addition to saving, editing and deleting custom colors and fonts for the themes.
Office 365 Default Theme 2023
The new default theme for Office 365 has been added to Spread .NET to keep the same look across your applications.
Custom Document Properties
Spread .NET now supports setting custom document properties, including setting properties with a Name, Type, and Value.
Get Last Row/Column of Cell Range
The new IRange.End function allows you to get an IRange object that represents the cell at the end of a region of cells that contain the source range. This is useful for determining the last row or column in which data is set.
ColumnDragMoveCompleting / RowDragMoveCompleting Events
The new ColumnDragMoveCompleting and RowDragMoveCompleting events fire when a user finishes moving a row or column via dragging.
Hide Borders of Spilled Dynamic Array
When using dynamic arrays, an indicator will show where it will spill. With the DynamicArrayRenderer property, you can choose to hide this indicator.
Paste Options for Rich Clipboard
When the RichClipboard option is set to True, a user can select various pasting types including:
- Formulas & Number Formatting
- Keep Source Formatting
- No Borders
- Keep Source Column Widths
- Paste Values
- Values & Number Formatting
- Values & Source Formatting
- Paste Link
- Paste as Picture
- Linked Picture
- Column Widths
- Merge Conditional Formatting
GoTo First/Last Sheet
Ctrl clicking on the next and previous button of the tab strip will now navigate to the last or first sheet, respectively.
Copy Method of IWorksheets
The IWorksheets interface now has a Copy method that is used for both for copying a cell’s destination/reference sheet and creating a reference state within the copied sheets.
Scrolling Left and Right with Mouse Wheel
Spread .NET now supports scrolling horizontally in a worksheet using Shift+Ctrl+Mouse Wheel.
The EVALUATE function has been added to Spread .NET. This function allows you to evaluate a text equation as an algebraic equation. This function can only be used within the confines of a Named Range.
Spread .NET now includes the IRange.HasSpill API, similar to Excel. This API helps determine whether a cell range includes spilled values or not.
Multi-Level Category Labels
Chart labels now support multiple rows or columns, which can help with chart organization and readability.
Chart sheets are a new type of sheet in Spread .NET, which only contains a chart and nothing else. This is only available if the EnhancedShapeEngine property is set to true. This is available through API and also right-clicking on a sheet tab.
Embedded Shapes with Charts
Charts now support embedding shapes within them. You can insert a shape in a chart, and it can be interacted with as normal but is limited by the chart’s boundaries.
Shape with Curve Annotation
Shapes can now be drawn with curved segments. These can done either via code or the ribbon bar. When drawing them manually, they are added when moving and clicking with the mouse and then double-clicking, pressing Enter/Esc, or single-clicking the starting point to finish the shape.
Insert Pictures in Cells
Pictures in Spread .NET can now be inserted inside of cells. This is supported via “Paste Picture in Cell” in the Paste Options context menu (when RichClipboard is set to true) and “Insert Picutres in Cells” in the Ribbon Bar. User also can add it via code using IRange.InsertPictureInCell.
Vertical Text in Shapes
Shapes now support setting vertical text correctly as long as the EnhancedShapeEngine property is set to true. This is done via the TextOrientation.HorizontalRotatedFarEast setting.
.NET 8 Support
Spread .NET now supports .NET 8 with the V17 release.
Spread .NET has supported Excel-compatible shortcut keys, and with the V17 release we have added support for even more shortcut keys, including:
- Ctrl + - : Delete Cells
- Ctrl + F3 : Show Name Manage Dialog
- Shift + F9 : Calculate the active sheet
- F9 : Calculate the entire workbook
- Ctrl + Shift + T : Show/hide total row of a table
- Ctrl + T : Create table
- Ctrl + U : Formats text as underline
- Ctrl + I : Formats text as italic
- Ctrl + B : Formats text as bold
- Ctrl + Shift + % : Format text as a percentage
- Ctrl + Shift + V : Paste plain text or paste values
- Alt + Shift + Right Arrow : Create an outline group
- Alt + Shift + Left Arrow : Ungroup
The V17 release of Spread .NET has also addressed a few performance issues, including:
- Lagging when moving focus with an arrow key
- Calculating cells after set formula/value
- Recalculation after spilling 500 rows in 400 columns
- Issues upgrading from older versions
- INDEX formula references
- Dynamic array optimization