Spread Windows Forms Product Documentation
Assembly Reference
Getting Started
Handling Installation
Pipeline Licensing
Product Requirements
Activating the Product
Creating a Runtime License
Using Satellite Assemblies for Languages
End-User License Agreement
Installing the Product
Handling Redistribution
Using Windows Regional Settings or Options
Getting More Practice
Getting Technical Support
Finding the Documentation
Understanding the Spread Wizard
Starting the Spread Wizard
Using the Spread Wizard
Tutorial: Creating a Checkbook Register
Adding Formulas to Calculate Balances
Setting the Cell Types of the Register
Setting Up the Rows and Columns of the Register
Adding Spread to the Checkbook Project
Spread Designer Guide
Using the Chart Designer
Chart Collection Editors
LabelArea Collection Editor
LegendArea Collection Editor
Light Collection Editor
PlotArea Collection Editor
Series Collection Editor
Chart Designer Toolbar
Opening the Chart Designer
Adding Charts
Applying and Customizing Themes
Designing in the Data Area
Rich Text Editing
Adding and Customizing Sheets
Selecting an Item in the Spread Designer
Selecting an Individual Cell
Selecting a Contiguous Range of Cells
Selecting a Column of Cells
Selecting an Entire FpSpread Component
Selecting the Cells with Data
Selecting a Row of Cells
Selecting a Sheet of Cells
Entering a Formula in Spread Designer
Setting Properties in Spread Designer
Setting Cell Properties in Spread Designer
Setting Column Properties in Spread Designer
Setting Row Properties in Spread Designer
Setting Sheet Properties in Spread Designer
Setting Table Properties in Spread Designer
Spread Designer Dialogs
Forecast Sheet Dialog
Goal Seek Dialog
Insert Function Dialog
Cell Styles Dialog
Cell Type Dialog
Background Tab
BarCode Tab
Button Tab
Check Box Tab
Color Picker Tab
Combo Box Tab
Currency Tab
Date-Time Tab
GcCharMask Tab
GcComboBox Tab
GcDateTime Tab
GcMask Tab
GcNumber Tab
GcTextBox Tab
GcTimeSpan Tab
General Tab
Hyperlink Tab
Image Tab
Label Tab
ListBox Tab
Mask Tab
MultiColumnComboBox Tab
MultiOption Tab
Number Tab
Percent Tab
Progress Tab
Regular Expression Tab
Rich Text Tab
Slider Tab
Text Tab
Conditional Formatting Dialog
Custom File Options Dialog
Go To Cell Dialog
Row Height or Column Width Dialog
Row or Column Insert or Delete Dialogs
Name Manager Dialog
Sheet Print Settings Dialog
Page Tab
Header/Footer Tab
Margins Tab
Sheet Tab
Shape Properties Dialog
Shape Shadow Properties Dialog
Sheet Settings Dialog
Colors tab
Font tab
General tab
Grid Lines tab
Headers tab
Sort Dialog
Spread Settings Dialog
Calculations Tab
Edit tab
General Tab
Scroll Bars Tab
Split Box Tab
Titles Tab
View Tab
Unhide Specific Row or Column Dialogs
Zoom Dialog
Spread Designer Editors
Formatter and Editor
Alternating Row Collection Editor
Border Editor
Cells, Columns, and Rows Editor
DefaultGroupFooter Editor
Focus Indicator Editor
Footer Editor
Formula Editor
GroupInfo Collection Editor
Header Editor
InputMap Editor
Named Style Editor
SheetSkin Editor
SheetView Collection Editor
Shortcut Collection Editor
SmartPrintRule Collection Editor
SpreadChart Collection Editor
SpreadSkin Editor
TabStrip Editor
Spread Designer User Interface
Formula Bar
Spread Designer Data Area
Spread Designer Menus
Developer Menu
Formulas Menu
Context Menu
Sheet Context Menu
Data Menu
Home Menu
File Menu
Settings Menu
Help Menu
Insert Menu
Page Layout Menu
Table Context Menu
View Menu
Spread Designer Property Window
Spread Designer Status Bar
Spread Designer Quick Access Toolbar
Introduction
Using Spread Designer in Runtime
Getting Started Designing
Starting Spread Designer
Understanding Applied Settings
Overview of Spread Designer Features
Simple Example Using Spread Designer
Running Spread Designer Stand Alone
Designing Shapes
Advanced Topics for Shapes
Creating a Custom Compound Shape
Using Shapes with Maps
Using Pictures in Shapes
Customizing Particular Shapes
Customizing a Line as an Arrow
Customizing a Polygon
Customizing Text as a Shape
Understanding the Built-in Shapes
Things to Do with Any Shape
Adding Hyperlink to a Shape
Editing the Points of a Shape
Adding a Shape to a Sheet
Changing the Appearance of a Shape
Using Keys with Shapes
Locking a Shape
Moving a Shape
Resizing a Shape
Rotating a Shape
Adding a Drop Shadow
Working with the Design
Applying the Design to the Form
Saving and Opening Design Files
Previewing a Sheet in Spread Designer
Printing a Sheet from Spread Designer
Resetting and Clearing Design Work
Developer's Guide
Chart Control
Creating Charts
Advanced chart settings
Fill Effects
View Type
Connecting to Data
Using a Bound Data Source
Using an UnBound Data Source
Binding with cell range
Creating Plot Types
Combining different types of plots
Creating a Pie Plot
Creating a Polar Plot
Creating a Radar Plot
Creating an XY Plot
Creating an XYZ Plot
Creating a Y Plot
Creating a Sunburst Chart
Creating a Treemap Chart
Using the Chart Control
Save/Load Chart Control
Using the Chart Control on sheet
Saving or Loading a Chart
Allowing the User to Change the Chart
Understanding Charts
Chart Types and Views
Error Bars
Multi-Level Category Labels
Chart Object Model
Chart User Interface Elements
Plot area
Axis
Elevation and Rotation
Walls
Series
Lighting, Shapes, and Borders
Chart Line Style
Plot Types
Data Plot Types
Pie Plot Types
Doughnut Charts
Pie Charts
Polar Plot Types
Polar Area Charts
Pie Charts
Polar Line Charts
Polar Point Charts
Polar Stripe Charts
Radar Plot Types
Radar Area Charts
Radar Line Charts
Radar Point Charts
Radar Stripe Charts
XY Plot Types
XY Bubble Charts
XY Line Charts
XY Point Charts
XY Stripe Charts
XYZ Plot Types
XYZ Line Charts
XYZ Point Charts
XYZ Stripe Charts
XYZ Surface Charts
Y Plot Types
Bar Charts
Market Data (High-Low) Charts
Area Charts
Line Charts
Point Charts
Stripe Charts
Funnel Charts
Histogram Charts
Pareto Charts
Waterfall Charts
Box Whisker Charts
Labels
Legends
Events from User Actions
Clicking Actions
Entering Data Actions
Interactivity Actions
Print Actions
Selecting Actions
Shape Actions
Sheet-Level Actions
Working with the Component
Adding a Component to a Visual Studio 2019 or 2022 Project
Adding NuGet Package in Spread Windows Forms
Migrate .NET Framework Project to .NET 8 Platform
Migrate .NET Framework Project to .NET 6 Platform
Setting the Properties
Using Smart Tags Drop-Down
Working with Collection Editors
Using Verbs in the Properties Window
Adding Support for High DPI Settings
Adding a Component to a Visual Studio 2013 Project
Adding a Component to a Visual Studio 2017 Project
Formulas in Cells
Auto Format Formulas
Creating and Using a Visual Function
Precedents and Dependents
Using the Array Formula
Displaying Formula in Cells
Specifying an External Reference in a Formula
Creating and Using External Variable
Using External Variables with Text Box Control
Managing External Reference
Allowing the User to Enter Formulas
Working with the Formula Text Box
Specifying a Cell Reference in a Formula
Using a Circular Reference in a Formula
Creating and Using a Custom Function
Creating and Using a Custom Name
Finding a Value Using GoalSeek
Nesting Functions in a Formula
Placing a Formula in Cells
Setting up the Formula Provider
Recalculating and Updating Formulas Automatically
Specifying a Sheet Reference in a Formula
Accessing Data from Header or Footer
Setting up the Name Box
Using DataTable Formula
Using Language Package
Available Language Packages for WinForms
Creating and Using a Custom Language Package
Working With Dynamic Array Formulas
Understanding the Product
Product Overview
Cell Types
Formatted versus Unformatted Data
Underlying Models
Shortcut Objects
Key Features
Data Binding
Binding to Data
Binding a Combo Box to a DataReader
Binding a Cell Range in Spread as a Data Source to an External Control
Binding Spread to an External Data Set
Binding a Cell Range in Spread to an External Data Source
Adding to Bound Data
Adding a Row to a Bound Sheet
Adding an Unbound Row to a Bound Sheet
Customizing Data Binding
Customizing Cell Types for Bound Sheets
Customizing Column Headers for Bound Sheets
Customizing Column and Field Binding
Adding an Unbound Column to a Bound Sheet
Working with Hierarchical Data Display
Creating Custom Hierarchy Icons
Creating a Hierarchical Display Manually
Tutorial: Binding to a Corporate Database (Visual Studio 2013 or later)
Customizing Interaction in Cells
Using Double Click to Fill Cells
Using Drag Operations to Fill Cells
Filling Cells with Drag and Drop
Filling Cells with Drag and Fill
Filling Cells with Drag and Move
Using Edit Mode and Focus
Understanding Edit Mode in a Cell
Locking a Cell
Using Visible Indicators in the Cell
Returning Information for a Clicked Cell
Customizing the Focus Indicator for a Cell
Preventing a Cell from Receiving Focus
Locating the Pointer Using HitTest
Using Validation
Displaying Error Icons in Cells or Rows
Using Validation in Cells
Using a Character Format Validator
Using a String Comparison Validator
Using a Cell Comparison Validator
Using a Value Comparison Validator
Using an Encoding Validator
Using the Exclude List Validator
Using the Include List Validator
Using a Pair Validator
Using the Range Validator
Using a Regular Expression Validator
Using a Required Field Validator
Using a Required Type Validator
Using a Surrogate Character Validator
Using a Text Length Validator
Customizing the User Error Messages
Validating User Input
Adding Custom Context Menu to a Component
Customizing Interaction Based on Events
Displaying Context Menu at Runtime
Customizing User Selection and Deselection of Data
Working with Selections
Hiding the Selection When Focus is Lost
Customizing the Selection Appearance
Specifying What the User Can Select
Working with Deselections
Customizing Undo and Redo Actions
Customizing Row or Column Interaction
Copying Size and Style of Row/Column on Insert
Customizing User Searching of Data
Searching for Data with Code
Allowing the User to Perform an Advanced Search
Allowing the User to Perform a Standard Search
Managing Filtering of Rows of User Data
Allowing the User to Filter Rows
Setting the Appearance of Filtered Rows
Customizing the Filter Bar
Setting the Appearance of Filter Indicators
Using Custom Filter Indicator Images
Showing or Hiding Filter Indicators
Determining Which Header Row Displays the Indicators
Customizing Enhanced Filtering
Adding a Custom Sort Dialog
Managing Cell Range Filtering
Customizing Simple Filtering
Creating a Custom Filter
Customizing the Filter List
Setting the Appearance of the Display of the Filter Item List
Defining the Contents of the Filter Item List
Defining the Order of the Items in the Filter Item List
Understanding Simple Row Filtering
Managing Grouping of Rows of User Data
Allowing the User to Group Rows
Setting the Appearance of Grouped Rows
Customizing the Group Bar
Interoperability of Grouping with Other Features
Creating a Custom Group
Using Grouping
Managing Outlines (Range Groups) of Rows and Columns
Customizing the Appearance of an Outline (Range Group)
Interoperability of Outlines with Other Features
Using an Outline (Range Group) of Rows or Columns
Managing Sorting of Rows of User Data
Setting the Appearance of Sort Indicators
Managing Cell Range Sorting
Sorting Rows, Columns, or Ranges
Using Automatic Sorting
Allowing the User to Automatically Sort Rows
Customizing Drawing
Creating Enhanced Camera Shape
Creating Camera Shapes
Allowing the User to Draw with a Tablet PC
Working with Images
Working with Shapes in Code
Working With Shapes (Enhanced Shape Engine)
Keyboard Interaction
Using Input Maps with Action Maps
Changing an Input Map for a Child View
Customizing the Input Maps
Default Keyboard Maps
Default Map for ExtendedSelect and WhenAncestorOfFocused
Default Map for ExtendedSelect and WhenFocused
Default Map for MultiSelect and WhenAncestorOfFocused
Default Map for MultiSelect and WhenFocused
Default Map for Normal and WhenAncestorOfFocused
Default Map for Normal and WhenFocused
Default Map for ReadOnly and WhenAncestorOfFocused
Default Map for ReadOnly and WhenFocused
Default Map for RowMode and WhenAncestorOfFocused
Default Map for ReadOnly and WhenAncestorOfFocused
Default Map for SingleSelect and WhenAncestorOfFocused
Default Map for SingleSelect and WhenFocused
Changing the Default Keyboard Map
Deactivating the Default Keyboard Map
Factors of Keyboard Map Usage
Default Keyboard Navigation
Underlying Keystroke Processing
Saving and Loading Map Files
Using the Excel Compatibility Input Maps
Default Map for Excel Compatibility
Using Excel-compatible Keyboard Shortcuts
Printing
Specifying What to Print
Printing in Duplex Mode
Printing an Area of the Sheet
Printing the Portion of the Sheet with Data
Printing a Child View of a Hierarchical Display
Printing a Sheet with Cell Notes
Printing Particular Pages
Printing to PDF
Printing a Range of Cells on a Sheet
Printing a Sheet with Shapes
Printing an Entire Sheet
Customizing the Appearance of the Printing
Customizing the Print Preview Dialog
Adding a Page Break
Customizing the Printed Page Header or Footer
Customizing the Printed Page Layout
Understanding the Printing Options
Repeating Rows or Columns on Printed Pages
Customizing the Print Job Settings
Adding a Watermark to a Printed Page
Optimizing the Printing
Optimizing the Printing Using Size
Optimizing the Printing Using Rules
Displaying Dialogs for Users
Modifying the PageSetup Dialog for the User
Displaying an Abort Message for the User
Displaying a Print Dialog for the User
Providing a Preview of the Printing
Ribbon Control
Customizing the Sheet Appearance
Customizing the Appearance of a Cell
Customizing the Outline of the Component
Creating and Customizing Cell Borders
Creating Borders with Diagonal Lines
Creating a Complex Border with Multiple Lines
Displaying Grid Lines on a Sheet
Customizing the Overall Component Appearance
Setting the Component to the Original Appearance
Applying a Skin to a Sheet
Creating a Custom Skin for a Sheet
Saving and Loading a Skin
Loading a Skin
Saving a Skin
Applying a Skin to the Component
Creating a Custom Skin for a Component
Customizing the Dimensions of the Component
Customizing Painting of Parts of the Component
Customizing the Individual Sheet Appearance
Setting a Background Image to a Cell
Coloring a Cell
Setting the Background Colors for a Sheet
Setting a Background Image for a Sheet
Using XP Themes with the Component
Creating and Applying a Style for Cells
Customizing the Display of the Pointer
Text Rendering with GDI
Using Conditional Formatting of Cells
Setting up Conditional Formatting of a Cell
Creating Conditional Formatting with Rules
Data Bar Rule
Highlighting Rules
Top, Bottom, or Average Rules
Icon Set Rule
Color Scale Rules
Customizing the Renderers
Handling Right-to-Left Layouts
Applying Theme to Customize the Appearance
Customizing the User Interface Images
Cell Types
Understanding Additional Features of Cell Types
Customizing Automatic Completion (Type Ahead)
Allowing the Display of Buttons in a Cell
Creating a Custom Cell Type
Limiting Values for a Numeric Cell
Customizing the Pop-Up Calculator Control
Displaying Spin Buttons
Working with a SubEditor
Understanding How Cell Types Work
Understanding How Cell Type Affects Model Data
Understanding Cell Type Basics
Understanding How Cell Types Display and Format Data
Working with Editable Cell Types
Setting a GcCharMask Cell
Setting a GcComboBox Cell
Setting a GcMask Cell
Setting a GcNumber Cell
Setting a GcTimeSpan Cell
Setting a Currency Cell
Setting a Date-Time Cell
Customizing the Pop-Up Date-Time Control
Setting a GcDateTime Cell
Setting a GcTextBox Cell
Setting a General Cell
Setting a Mask Cell
Setting a Number Cell
Setting a Percent Cell
Setting a Regular Expression Cell
Setting a Rich Text Cell
Setting a Text Cell
Working with Graphical Cell Types
Setting a Barcode Cell
Setting a Button Cell
Setting a Check Box Cell
Setting a Color Picker Cell
Setting a Combo Box Cell
Allowing a Combo Box Cell to Handle a Double Click
Setting a Hyperlink Cell
Setting an Image Cell
Setting a List Box Cell
Setting a Multiple-Column Combo Box Cell
Setting a Multiple Option Cell
Setting a Progress Indicator Cell
Setting a Slider Cell
Sparklines
Add Sparklines Using Methods
Specifying Horizontal and Vertical Axes
Customizing Markers and Points
Working with Sparklines
Add Sparklines using Formulas
Area Sparkline
BoxPlot Sparkline
Bullet Sparkline
Cascade Sparkline
Column, Line, and Winloss Sparkline
Gauge KPI Sparkline
Hbar and Vbar Sparkline
Histogram Sparkline
Image Sparkline
Month and Year Sparkline
Pareto Sparkline
Pie Sparkline
Scatter Sparkline
Spread Sparkline
Stacked Sparkline
Vari Sparkline
Cells
Adding Hyperlink in a Cell
Inserting Cells
Working with the Active Cell
Displaying Cell Data
Resizing the Data to Fit the Cell
Aligning Cell Contents
Resizing a Cell to Fit the Data
Allowing Cell Data to Overflow
Allowing Cells to Merge Automatically
Adding a Note to a Cell
Creating a Range of Cells
Adding a Comment to a Cell
Working with Cell Format Strings
Formatting a Cell Value
Adding Image in a Cell
Creating a Span of Cells
Setting Rich Text in a Cell
Displaying Text Tips in a Cell
Working with Pattern and Gradient Fill Effects
Adding a Tag to a Cell
Managing Data on a Sheet
Creating Data Type for Custom Objects
Remove Duplicates from Range
Placing and Retrieving Data
Handling Data Using Sheet Methods
Handling Data Using Cell Properties
Copying Data on a Sheet
Repeatedly Filling a Range of Cells with Copied Cells
Moving Data on a Sheet
Removing Data from a Sheet
Swapping Data on a Sheet
Text to Columns
Headers
Customizing the Appearance of Headers
Auto Expand Row Headers
Customizing the Style of Header Cells
Adding a Gradient to Header Cells
Customizing the Header Grid Lines
Showing or Hiding Headers
Creating a Header with Multiple Rows or Columns
Understanding Headers
Setting the Height or Width of Header
Creating a Span in a Header
Setting the Header Text
Customizing the Default Header Labels
Customizing Header Label Text
Customizing the Sheet Corner Appearance
Customizable Cell in the Sheet Corner
Header Count Synchronization in the Sheet Corner
Drawing (Rendering) Style
Cell Spans in the Sheet Corner
General Style of the Sheet Corner
Table Display in the Sheet Corner
Text Display in the Sheet Corner
Wrapping the Header Text
Rows and Columns
Setting up Preview Rows
Adding a Row or Column
Creating Alternating Rows
Setting Fixed (Frozen) Rows or Columns
Showing or Hiding a Row or Column
Rows or Columns That Have Data
Customizing the Number of Rows or Columns
Removing a Row or Column
Setting the Row Height or Column Width
Resizing the Row or Column to Fit the Data
Allowing the User to Resize Rows or Columns
Using Auto Row Height
Input Data in Rows or Columns
Moving Rows or Columns
Adding a Tag to a Row or Column
Sheets
Form Controls
Protecting a Worksheet
Selecting Multiple Sheets
Customizing the Sheet Name Tabs
Adding ChartSheet
Customizing Clipboard Operation Options
Displaying a Footer for Columns or Groups
Navigating Sheet Tabs
Working with the Active Sheet
Adding a Sheet
Placing Child Controls on a Sheet
Copying and Inserting a Sheet
Showing or Hiding a Sheet
Moving a Sheet
Working with Multiple Sheets
Removing a Sheet
Adding a Title and Subtitle to a Sheet
Adding a Tag to a Sheet
Working with 1-Based Indexing
Spreadsheet Objects
Rich Text Editing
Resetting Parts of the Interface
Allowing the User to Zoom the Display of the Component
Improving Performance by Suspending the Layout
Object Parentage
Ways to Improve Performance
Working with Scroll Bars
Customizing the Scroll Bars
Customizing Scroll Bar Tips
Customizing the Position in the Display
Customizing Split Boxes
Customizing Viewports
Adding a Status Bar
Understanding Parts of the Component
Allowing User Functionality
Working With Slicers
Working with Built-In Dialogs
Tables
Understanding Structured References
Using Operators and Special Items
Understanding Structured Reference Syntax Rules
Using Structured References
Adding a Table
Auto Updating Filters in Table
Binding a Table
Using Table Filters
Resizing a Table
Sorting a Table
Setting Table Styles
Adding a Table Formula
File Operations
Opening Existing Files
Opening an Excel File
Opening a Spread COM File
Opening an XML Data File
Opening a Custom Text File
Saving Data to a File
Adding Custom Properties
Saving Spreadsheet Data to Simple XML
Saving to an Excel File
Saving to an HTML File
Saving to an HTML Table
Saving to an Image File
Saving to a PDF File
Saving to a Spread XML File
Saving to a Text File
Using Serialization
Parsing Formulas in Custom XML Deserialization
Implementing a Serializer Class
Understanding the Underlying Models
Creating a Custom Sheet Model
Understanding the Optional Interfaces
Finding More Details on the Sheet Models
Understanding the Sheet Model Classes and Interfaces
Understanding the Axis Model
Understanding the Data Model
Understanding the Selection Model
Understanding the Span Model
Understanding the Style Model
Storing Excel Summary and View
Touch Support with the Component
Using a Touch Keyboard
Understanding Touch Messages
Using the Touch Menu Bar
Using Touch Support
Using Touch Support with AutoFit
Using Touch Support with Cell Notes
Using Touch Support with Charts
Using Touch Support with Clipboard Operations
Using Touch Support with Drag and Fill
Using Touch Support with Editable Cells
Using Touch Support with Drop-Down Elements
Using Touch Support with Filtering
Using Touch Support with InputMan Cells
Using Touch Support when Moving Columns or Rows
Using Touch Support with Range Grouping
Using Touch Support with Grouping
Using Touch Support when Resizing Columns or Rows
Using Touch Support with Scrolling
Using Touch Support with Selections
Using Touch Support with Shapes
Using Touch Support when Sorting
Using Touch Support with the Tab Strip
Using Touch Support with Viewports
Using Touch Support with Zooming
Import and Export Reference
Excel-Formatted Files Export
Cell Settings Exported
Cell-Type Settings Exported
Print Settings Exported
Row and Column Settings Exported
Component and Sheet Settings Exported
Chart Settings Exported
Excel-Formatted Files Import
Border Styles Substituted
Cell Settings Imported
Chart Settings Imported
Formula Settings Imported
Print Settings Imported
Row and Column Settings Imported
Sheet Settings Imported
Workbook Settings Imported
Version Comparison Reference
Differences in Behavior and Operation
Mapping Actions of COM in .NET
General Differences in Product Design
Inherent Differences Based on Platform
Spread COM File Member Equivalents
Spread COM Event Equivalents in .NET
Spread COM Method Equivalents in .NET
Spread COM Property Equivalents in .NET
Object Import from Spread COM
Borders Imported from Spread COM Files
Cell Types Imported from Spread COM Files
Formulas Imported from Spread COM Files
Other Settings Imported from Spread COM Files