We're excited to announce that Spread.NET V17 has just released with lots of exciting new features. Let's jump right into the enhancements:
- Spread Ribbon Control
- Workbook Enhancements
- Header and Footer WrapText
- Printing Enhancements
- Saving to HTML
- Built-In Themes
- Office 365 Default Theme 2023
- Custom Document Properties
- Get Last Row/Column of a Cell Range
- ColumnDragMoveCompleting/RowDragMoveCompleting Events
- Hide Borders of Spilled Dynamic Array
- Paste Options for RichClipboard
- GoTo First/Last Sheet
- Copy Method for IWorksheets
- Scrolling Left and Right with Mouse Wheel
- Calculation Enhancements
- EVALUATE Function
- IRange.HasSpill API
- Chart Enhancements
- Multi-Level Category Labels
- Chart Sheet
- Embedded Shapes within Charts
- Shape Enhancements
- Shape with Curve Annotation
- Insert Pictures in Cells
- Vertical Text in Shapes
- .NET 8 Support
- Shortcut Keys
- Performance Improvements
Ready to Check Out the Latest Release? Download Spread.NET Today!
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:
ribbonBar1.Attach(fpSpread1);
You can also override built-in commands using the CommandExecuting and CommandExecuted events and manually execute commands using the ExecuteCommand function.
Workbook Enhancements
Header and Footer WrapText
With this release, Spread.NET provides the ability to wrap text for Column headers and footers with the WrapText2 property.
Help - Column Header | Help - Column Footer
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 in an HTML format. This is limited to the cell data only.
Built-In Themes
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 a Cell Range
The new IRange.End function allows you to get an IRange object representing the cell at the end of a region of cells containing 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 RichClipboard
When the RichClipboard option is set to True, a user can select various pasting types, including:
- Paste
- Formulas
- Formulas & Number Formatting
- Keep Source Formatting
- No Borders
- Keep Source Column Widths
- Transpose
- Paste Values
- Values & Number Formatting
- Values & Source Formatting
- Formatting
- Paste Link
- Paste as Picture
- Linked Picture
- Column Widths
- Merge Conditional Formatting
GoTo First/Last Sheet
Ctrl-clicking on the next and previous buttons of the tab strip will now navigate to the last or first sheet, respectively.
The IWorksheets interface now has a Copy method that is used for both 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.
Calculation Enhancements
EVALUATE Function
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.
IRange.HasSpill API
Spread.NET now includes the IRange.HasSpill API, similar to Excel. This API helps determine whether a cell range includes spilled values or not.
Chart Enhancements
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 by 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 that can be interacted with as normal but is limited by the chart’s boundaries.
Shape Enhancements
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 Pictures in Cells” in the Ribbon Bar.
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.
Shortcut Keys
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
Performance Improvements
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
These are several of the features added to Spread.NET with V17! To try out these features and more, be sure to download a trial of Spread.NET today: Download .NET Spreadsheet | Spread.NET
For more information about these features, you can download the Demos and check out the Documentation.