We're happy to announce the release of Spread.NET 12 SP1 version 12.0.20191.0. This release is especially exciting, with enhancements that improve performance, upgrading experience, and Excel-like features. The Spread.NET 12 v1 sp1 is now available for immediate download!
- Dynamic Array Support - You can now enter cell formulas that return array values which “spill” into empty adjacent cells! This powerful feature is a new alternative to array formulas and includes support for seven new formula functions and the new operators for spilled range (#) and range intersection (@).
- New Spread Designer Enhancements - The Spread Designer tool now supports the Formulas tab with tools for Defined Names, Formula Auditing and Calculation. This new UI also supports enabling the new dynamic array support in the spreadsheet (which is not enabled by default).
- Alternating Styles Support - You can now apply table-like formatting to entire sheets and skins with alternating row and column styles using the new flat-style model. This feature includes support for built-in Excel styles and themes, including gradient and pattern fill.
- Deselect the Selection like Microsoft Excel® – You can now use the CTRL key with the mouse or keyboard to remove specific cells from the selection, as in Microsoft Excel®.
- 1-based Indexing like VSTO – You can now create the IWorkbook to use 1-based indexing for all GrapeCity.Spreadsheet.IWorkbook APIs, like Microsoft Excel® VSTO APIs. This can enable easier porting of Excel VBA code or old Spread COM version code (which also used 1-based row and column indexing) to .NET, which has always used 0-based indexing for all APIs in previous releases for CLS compliance.
- New F4 Key Action – You can now use the F4 key while editing a formula reference to toggle the reference between absolute and relative column and row references, as in Microsoft Excel®.
- New Constructor for AsyncFunction – You can now create a custom AsyncFunction which uses specified FunctionAttributes. This enables creating custom asynchronous functions which are volatile, or which return arrays, or otherwise require specifying some FunctionAttributes for proper function.