The list below describes past changes and additions to MindFusion.Spreadsheet:
The Spreadsheet.WinForms distribution now includes assemblies for .NET 6. Locally installed assemblies don't show automatically in toolbox at this time, you can either add them manually or through Nuget package manager.
The Spreadsheet.WinForms distribution now includes assemblies for .NET 5. Locally installed assemblies don't show automatically in toolbox at this time, you can either add them manually or through Nuget package manager.
The standard forms from MindFusion.Spreadsheet.StandardForms.dll assembly can now be localized using XML files that map interface element identifiers to strings. To load a localization file, call the new SetLocalizationInfo method of the Workbook class passing the file path as argument. Ready-made localization files for French, German, Chinese, Korean, Spanish, Portuguese and Russian are provided in the Localization folder under the component's installation root.
The ExcelExporter and ExcelImporter classes are now times faster than before and the results are more accurate. Various problems and inconsistencies were fixed. Both classes now expose a View property. If you set the View property of the ExcelExporter, the exporter will also export view information, such as the active tab and selection. Alternatively, setting this property during import, will cause the view information to be imported.
MindFusion.Spreadsheet now uses the new MindFusion charting engine to display charts in worksheets. Along with the improved appearance (particularly when resizing the charts), the following new features have been added:
The worksheets can now be zoomed in and out through the new Zoom property.
Worksheets now support autofiltering. To enable it, call the AutoFilter method of the CellRange class. To specify autofiltering criteria for individual columns, use the AutoFilter overload. These criteria can also be specified interactively, through the drop-down buttons inside the headers of each column in the target range.
MindFusion.Spreadsheet now supports selection of multiple cell ranges. Cell ranges can be added to the selection interactively, by holding down the CTRL key while dragging with the mouse, or programmatically, by using one of the new methods of the Selection class: Add, AddRow, and AddColumn.
Rows and columns can now be grouped. To group or ungroup a range of rows or columns, use the Group or Ungroup methods of the RowRange and ColumnRange classes. To set the outline level of a row/column or a range of rows/columns directly, use the OutlineLevel property. Groups can be expanded and collapsed interactively, by clicking on the expand/collapse button in the view, or programmatically, by settings the IsCollapsed property of the respective row or column.
Several new events have been added to the WorkbookView and WorksheetView classes.
The control can now import, display and export texts with mixed formatting. Formatted texts can also be created programmatically by assigning a FormattedText instance to the Data property of cells. The supported formattings are: font name and size, bold, italic, underlined, strikeout, and text color.
22 new functions have been added to the core calculation engine, including a full set of database functions, such as DGET, DSUM, and so on. For additional information, see Function Reference.
The in-place editing has been improved. When typing a new formula, pressing the arrow keys will result in navigation within the worksheet (instead of adjusting the caret position) and the selected cell or cell ranges will be inserted as a reference in the currently edited formula. This can also be achieved by pressing the left mouse button and dragging - similarly to selecting cells in the worksheet.
The new HtmlExporter and MhtmlExporter classes can be used to export MindFusion.Spreadsheet Workbook objects to (X)HTML and MHTML files. To export a workbook, create an instance of the respective exporter class and call its Export method, passing the Workbook object as parameter.
The new ExcelExporter class can be used to export MindFusion.Spreadsheet Workbook objects to Excel. To export a workbook to XLSX, create an instance of the ExcelExporter class and call its Export method, passing the Workbook object as parameter.
The new CalcExporter class can be used to export MindFusion.Spreadsheet Workbook objects to the OpenDocument format. To export a workbook, create an instance of the CalcExporter class and call its Export method, passing the Workbook object as parameter.
Cells and cell ranges can be moved programmatically and interactively. To move a cell range programmatically, call one of the MoveTo overloads of a CellRange object representing the range and specify the destination. To move a range interactively, select the range, click near the the end of the selection rectangle and drag the rectangle to the desired location. The interactive movement can be disabled through the AllowMoveCells property of the WorkbookView class.
Columns and rows can be moved programmatically and interactively. To move a column/row programmatically, call one of the Move overloads of the ColumnCollection or RowCollection classes respectively, and specify the column/row to move and the desired location. To move columns or rows interactively, select the columns or rows entirely, click on any of the selected column or row headers and drag. The interactive movement can be disabled through the AllowMoveHeaders property of the WorkbookView class. Note that more than one column or row can be moved at a time.
The workbook provides a set of methods for searching and replacing of texts. To search texts, use the Find and FindAll methods. The former searches for the first cell containing a given text, the later returns all cells matching the criteria. To replace texts, use the Replace and ReplaceAll methods. The new FindReplaceForm class (contained in the MindFusion.Spreadsheet.WinForms.StandardForms.dll assembly) can be used to facilitate search and replace operations inside a workbook.
In-place formula editing has been extended with automatic literal, string, cell and cell range coloring and context-sensitive tooltip information for functions. The information for custom functions can be provided through the new ExtendedInformationProvider property of the Workbook class. The image below illustrates the new in-place edit box.