Besides the interfaces that are dedicated to each of the specific models, there are also optional interfaces that provide additional support and may be used when making custom models. These optional interfaces and the customizations they allow are summarized in this table:
Optional Interface | Customizations Allowed |
---|---|
IArraySupport |
Allows customization of support for getting and setting arrays of values in a range of cells |
IDataSourceSupport |
Allows customization of data binding on a sheet |
IChildModelSupport |
Allows customization of hierarchical data models for hierarchies on a sheet; used in conjunction with IDataSourceSupport |
ICalculationSupport, ICustomFunctionSupport, ICustomNameSupport, IExpressionSupport, IExpressionSupport2, IIterationSupport |
Allows customization of formulas on a sheet; ICustomFunctionSupport, ICustomNameSupport, and IIterationSupport are not useful without IExpressionSupport |
IDisjointSelections, IQuerySelection |
Allows customization of an ordered array of cell ranges containing the selected cells with the minimal overlap between the ranges on a sheet |
INamedStyle, IParseFormatSupport |
Allows customization of collections of custom styles in the style model |
INonEmptyCells |
Allows customization of non-empty counts to find out which rows or columns have data in the cells of that row or column on a sheet |
IOptimizedEnumerationSupport, IOptimizedEnumerationSupport2 |
Allows customization of optimized enumeration for iterating to the next non-empty row or column on a sheet |
IMovable, IRangeSupport |
Allows customization of moving, inserting, and deleting rows and columns support for a range of cells on a sheet; also covers clear, copy, move, and swap support |
IUnboundRowSupport |
Allows customization of unbound rows with data binding on a sheet; used in conjunction with IDataSourceSupport |
None of these optional interfaces are required for saving Excel or text files, or for printing. For more detailed information on these interfaces, refer to the FarPoint.Win.Spread.Model namespace in the Assembly Reference.
For more information on formulas in cells, refer Managing Formulas in Cells.
Return to the overview of Understanding the Underlying Models.