ComponentOne FlexGrid for WinForms
FlexGrid for WinForms Samples

Please be advised that this ComponentOne software tool is accompanied by various sample projects and/or demos which may make use of other development tools included with the ComponentOne Studio.

Please refer to the pre-installed product samples through the following path:

Documents\ComponentOne Samples\WinForms

Click one of the following links to view a list of C1FlexGrid samples:

Visual Basic Samples

Sample Description
AutoSizeEdit This sample demonstrates resizing the editor while the user types. This sample uses the C1FlexGrid control.
BarChart This sample uses OwnerDrawn cells to build a chart based on the grid data. This sample uses the C1FlexGrid control.
Blinker This sample shows how you can use CellStyles to make cells blink. The sample creates a custom style and uses a timer to change the foregound color on that style. This causes all cells that have that style to blink.This sample uses the C1FlexGrid control.
BoundDelete This sample deletes rows from a bound FlexGrid. This sample uses the C1FlexGrid control.
BoundFinishEdit This sample demonstrates how to commit changes to a DataRow after editing. This sample uses the C1FlexGrid control.
BoundImage This sample shows how to bind the grid to image fields stored as OLE objects. This sample uses the C1FlexGrid control.
C1FlexGridPrintable This sample provides a printable (via C1Preview) C1FlexGrid control. This sample uses the C1FlexGrid control and calls the C1.C1Preview namespace.
CellBorders This sample uses OwnerDraw to provide custom cell borders. This sample uses the C1FlexGrid control.
CellDataType This sample assigns cell types (and editors) on a per-cell basis. This sample uses the C1FlexGrid control.
CellMerging This sample shows various types of cell-merging in a C1FlexGrid control. This sample uses the C1FlexGrid control.
CellNotes This sample attaches notes to cells on a C1FlexGrid and implements Excel-style cell notes using two classes: CellNote and CellNoteManager.
ColumnEditor This sample exposes the C1FlexGrid design-time column editor in your controls. This sample uses the C1FlexGrid control.
CustomDataMap This sample demonstrates how to customize the options in drop-down lists when using DataMaps. This sample uses the C1FlexGrid control.
CustomEditor This sample shows how to implement your own cell editor. This sample uses the C1FlexGrid control.
CustomMerge This sample shows how to implement your own merging logic to create a TV-guide display. This sample calls the C1.Win.C1FlexGrid namespace.
CustomMerge2 This sample shows how to implement your own merging logic to mix merging modes. This sample calls the C1.Win.C1FlexGrid namespace.
CustomMerge3 This sample shows how to customize grouping by overriding the GetData method. This sample calls the C1.Win.C1FlexGrid namespace.
CustomMerge4 This sample shows how to customize grouping by overriding the GetData method. This sample calls the C1.Win.C1FlexGrid namespace.
CustomPrint This sample uses the CreateImage method to print grids with arbitrary row and column breaks. This sample uses the C1FlexGrid control.
CustomTree This sample uses the C1FlexGrid control to build a tree. This sample uses the C1FlexGrid control.
DataIndex This sample uses the Row.DataIndex property to get the underlying data row. This sample uses the C1FlexGrid control.
DataMap This sample uses data-mapped columns when bound to a data source. This sample uses the C1FlexGrid control.
DataReader This sample populates a grid from a DataReader. This sample uses the C1FlexGrid control.
DataTable This sample shows how you can create, populate, and bind a DataTable object to the grid (including add/remove rows). This sample uses the C1FlexGrid control.
DataTree This sample binds the grid to a hierarchical data source and show details in child grids.
DBDynamicStyles This sample assigns styles to grid cells based on their contents. This sample uses the C1FlexGrid control.
DBImageField This sample shows images stored in a DataTable. This sample uses the C1FlexGrid control.
DBSchemaChange This sample shows how to test grid response to changes in the data source object. This sample uses the C1FlexGrid control.
DBTree This sample shows how to display bound data in a hierarchical tree view. This sample uses the C1FlexGrid control.
DragDrop This sample shows how to customize automatic Drag & Drop. This sample uses the C1FlexGrid control.
DragDropManual This sample shows how to implement manual OleDragDrop between controls and within the grid.
DragRow This sample shows how to drag rows between grids. This sample uses the C1FlexGrid control.
DynamicStyles This sample shows how to assign styles to a cell based on the contents of another cell. This sample uses the C1FlexGrid control.
Editing This sample demonstrates how to edit cells using textboxes, lists, masks, and checkboxes. This sample uses the C1FlexGrid control.
FilterRow_With_Totals This sample shows a how to add totals to a bound grid with a FilterRow.
FlexByRow This sample sets up a grid in 'transposed' format. In this sample data types, edit masks, formats, and other properties usually assigned to grid columns are assigned to grid rows. This sample uses the C1FlexGrid control.
FlexGroup This sample shows how you can implement Outlook-style grouping and filtering using the C1FlexGrid. This sample uses the C1FlexGrid control.
FreezeBottom This sample demonstrates how to show frozen rows at the bottom of a grid. This sample uses the C1FlexGrid control.
GridChart This samples show how you can attach a FlexGrid to a C1Chart control. This sample uses the C1FlexGrid and C1Chart controls.
HierData This sample shows how you can bind to hierarchical data sources (master-detail style). This sample uses the C1FlexGrid control.
Hyperlink This sample shows how you can add hyperlinks to cells in the C1FlexGrid. This sample uses the C1FlexGrid control.
LoadSpeed This sample shows three techinques for loading data into a C1FlexGrid.
MapAndGroup This sample shows grouping and sorting behavior when using data-mapped columns. This sample uses the C1FlexGrid control.
MergeStyles This sample merges CellStyles assigned to rows, columns, and cells. This sample uses the C1FlexGrid control.
MultiColumnDictionary This sample uses the MultiColumnDictionary class to implement multi-column drop-downs.
Outline This sample shows how to hide repeated data in an outline. This sample uses the C1FlexGrid control.
PdfExportVB This sample uses C1Pdf method to export C1FlexGrids to PDF files.
ProductTree This sample demonstrates how to build a custom tree with product information. This sample uses the C1FlexGrid control.
RTFGrid This sample shows how to display RTF text in grid cells. This sample uses the C1FlexGrid control.
ScrollPosition This sample shows how the ScrollPosition property works. This sample uses the C1FlexGrid control.
SelectionMode This sample shows the effect of the SelectionMode property. This sample uses the C1FlexGrid control.
Sorting This sample shows several sorting techniques. This sample uses the C1FlexGrid control.
Splits This sample demonstrates how to split a C1FlexGrid into multiple views. This sample uses the C1FlexGrid control.
StartEditing This sample implements a grid that stays in cell-editing mode. This sample uses the C1FlexGrid control.
Styles This sample shows how you can use Styles to customize the appearance of the C1FlexGrid. This sample uses the C1FlexGrid control.
Subtotals This sample creates subtotals for multiple columns. This sample uses the C1FlexGrid control.
Transpose This sample shows how to transpose data in a grid. This sample uses the C1FlexGrid control.
TreeCheck This sample shows how to add checkboxes to a grid tree. This sample uses the C1FlexGrid control.
TreeNode This sample shows how to manage an outline tree using the C1FlexGrid Node objects. This sample uses the C1FlexGrid control.
Validate This sample shows how to use the ErrorProvider control with the C1FlexGrid. This sample uses the C1FlexGrid control.
ZoomCell This sample shows how to zoom in on the selected cell.

C# Samples

Sample Description
AcceleratorCaption This sample shows how to add accelerator keys to grid captions.
Analyze This sample shows how to provide dynamic data sorting and grouping. This sample uses the C1FlexGrid control.
AnimagedGif This sample shows how to display animated gifs in grid cells.
AutoComplete This sample shows how to complete entries while the user types.
AutoSizeEdit This sample shows how to resize the editor while the user types. This sample uses the C1FlexGrid control.
BarChart This sample shows how to draw bar charts using the grid cells. This sample uses the C1FlexGrid control.
Blinker This sample shows how to use CellStyles to make cells blink.
BoundDelete This sample shows how to delete rows from a bound FlexGrid. This sample uses the C1FlexGrid control.
BoundFinishEdit This sample shows how to commit changes to a DataRow after editing. This sample uses the C1FlexGrid control.
BoundImageMap This sample shows how to use the ImageMap property with a data-bound grid. This sample uses the C1FlexGrid control.
C1FlexGridPrintable This sample provides a printable (via C1Preview) C1FlexGrid control. This sample uses the C1FlexGrid control and calls the C1.C1Preview namespace.
CellBorders This sample shows how to use OwnerDraw to provide custom cell borders. This sample uses the C1FlexGrid control.
CellDataType This sample shows how to assign cell types (and editors) on a per-cell basis. This sample uses the C1FlexGrid control.
CellLabelDelay This sample shows how to show cell labels after a specified interval.
CellNotes This sample attaches notes to cells on a C1FlexGrid and implements Excel-style cell notes using two classes: CellNote and CellNoteManager.
Classic (C1FlexGridClassic) This sample shows a grid that derives from C1FlexGrid and provides an object model compatible with the VSFlexGrid control.
ColumnEditor This sample shows how to expose the FlexGrid design-time column editor in your controls. This sample uses the C1FlexGrid control.
ColumnFilters This sample shows how to use the filtering feature in C1FlexGrid 2010. The sample shows how you can control and customize the grid's built-in filters using the AllowFiltering property and the AfterFilter event.
ColumnOrder This sample shows how to position columns dynamically. This sample uses the C1FlexGrid control.
ColumnWidthTip This sample shows how to show a ToolTip while the user resizes columns.
CrossTabs This sample shows how to summarize and cross-reference data using PivotTables.
CustomData This sample shows how to implement a custom data source object. This sample uses the C1FlexGrid control.
CustomDataMap This sample shows how to customize the options in drop-down lists when using DataMaps. This sample uses the C1FlexGrid control.
CustomEditor This sample shows how to implement your own cell editor. This sample uses the C1FlexGrid control.
CustomEditors This sample shows how to use built-in, .NET, and custom edit controls with the C1FlexGrid.
CustomFilters This sample shows how to implement custom filters for the C1FlexGrid.
CustomMerge This sample shows how to implement your own merging logic to create a TV-guide display. This sample calls the C1.Win.C1FlexGrid namespace.
CustomMerge2 This sample shows how to implement your own merging logic to mix merging modes. This sample calls the C1.Win.C1FlexGrid namespace.
CustomMerge3 This sample shows how to customize grouping by overriding the GetData method. This sample calls the C1.Win.C1FlexGrid namespace.
CustomMerge4 This sample shows how to customize grouping by overriding the GetData method. This sample calls the C1.Win.C1FlexGrid namespace.
CustomPrint This sample shows how to use the CreateImage method to print grids with arbitrary row and column breaks. This sample uses the C1FlexGrid control.
CustomPrintMultiGrid This sample shows how to use the CreateImage method to print multiple grids in a single document.
CustomSelection This sample uses OwnerDraw to implement custom (non-rectangular) selection. This sample calls the C1.Win.C1FlexGrid namespace.
CustomSort This sample shows how to implement your own sorting logic with a custom IComparer object. This sample uses the C1FlexGrid control.
DataIndex This sample shows how to use the Row.DataIndex property to get the underlying data row. This sample uses the C1FlexGrid control.
DataTable This sample shows how to bind to a DataTable, add and remove rows. This sample uses the C1FlexGrid control.
DataTree This sample shows how to bind the grid to a hierarchical data source and show details in child grids. This sample calls the C1.Win.C1FlexGrid namespace.
DBDynamicStyles This sample shows how to assign styles to grid cells based on their contents. This sample uses the C1FlexGrid control.
DBImageField This sample demonstrates how to show images stored in a DataTable. This sample uses the C1FlexGrid control.
DBImages This sample shows how to bind the grid to a data base with image fields stored as OLE objects. This sample uses the C1FlexGrid control.
DBSchemaChange This sample shows how to test grid response to changes in the data source object. This sample uses the C1FlexGrid control.
DBTree This sample shows how to display bound data in a hierarchical tree view. This sample uses the C1FlexGrid control.
DBUpdate This sample shows how to save changes to the underlying database. This sample uses the C1FlexGrid control.
DragDrop This sample shows how to customize automatic Drag & Drop This sample uses the C1FlexGrid control.
DragImages This sample shows how to customize Ole Drag and Drop to use cell images.
DragMerged This sample shows how to drag groups of merged columns. This sample uses the C1FlexGrid control.
DragRow This sample shows how to drag rows between grids. This sample uses the C1FlexGrid control.
DynamicStyles This sample shows how to assign styles to a cell based on the contents of another cell. This sample uses the C1FlexGrid control.
ErrorInfo This sample demonstrates how to show error information on the grid.
Excel This sample shows how to load and save Microsoft Excel files (.xls).
ExcelStyleFilter This sample adds a context-menu that allows sorting and filtering data.
FilterRow This sample shows how to implement a FilterRow on a FlexGrid control. This sample uses the C1FlexGrid control.
FindRow This sample shows how to how to find a row in the underlying datasource. This sample uses the C1FlexGrid control.
FlexByRow This sample shows how to set up a grid in 'transposed' format. This sample uses the C1FlexGrid control.
FlexGroup This sample shows how to implement Outlook-style grouping using the C1FlexGrid. This sample uses the C1FlexGrid control.
FlexHierarchical This sample shows how to implement hierarchical data binding using the C1FlexGrid. This sample calls the C1.Win.C1FlexGrid namespace.
FreezeBottom This sample demonstrates how to show frozen rows at the bottom of a grid. This sample uses the C1FlexGrid control.
GridChart This sample shows how to attach a FlexGrid to a C1Chart control. This sample uses the C1FlexGrid and C1Chart controls.
HierData This sample shows how to bind to hierarchical data sources (master-detail style). This sample uses the C1FlexGrid control.
HierData2 This sample shows how to bind to hierarchical data sources (master-detail style).
HostControls This sample shows how to host controls in grid cells. This sample uses the C1FlexGrid control.
Hyperlink This sample shows how to add hyperlinks to cells in the FlexGrid. This sample uses the C1FlexGrid control.
LegacyDates This sample shows how to use an unbound column to convert dates stored as strings into real dates.
LockedColumns This sample shows how to prevent the user from selecting certain columns.
MasterDetail This sample shows how to create and bind master-detail DataSets in code. This sample calls the C1.Win.C1FlexGrid namespace.
MergeStyles This sample shows how to merge CellStyles assigned to rows, columns, and cells. This sample uses the C1FlexGrid control.
MultiColumnDictionary This sample shows how to use the MultiColumnDictionary class to implement multi-column drop-downs.
MultiParent This sample shows how to create a complex master-detail display.
MultiSelection This sample shows how to implement multi-range selection.
NewFeatures20091 This sample shows the new features that were added for the V1/2009 release.
NewRowTemplate This sample shows how to place a new row template above the grid.
Outline This sample shows how to hide repeated data in an outline. This sample uses the C1FlexGrid control.
OwnerDraw This sample shows how to autosize Owner-Drawn cells.
OwnerDrawAlpha This sample shows how to use OwnerDraw with transparency to get MediaPlayer-like effects.
PasswordChar This sample shows how to use the C1FlexGrid to enter and edit passwords. This sample uses the C1FlexGrid control.
PdfExport This sample shows how to use the C1Pdf method to export C1FlexGrids to PDF files.
RowStateDisplay This sample shows how to use different styles to display DataRows in different states. This sample uses the C1FlexGrid control.
RTFGrid This sample shows how to display RTF text in grid cells. This sample uses the C1FlexGrid control.
ScrollPosition This sample shows how to shows how the ScrollPosition property works. This sample uses the C1FlexGrid control.
SelectionMode This sample shows how to shows the effect of the SelectionMode property. This sample uses the C1FlexGrid control.
SetupEditor This sample shows how to use the SetupEditor event to customize the grid editors. This sample uses the C1FlexGrid control.
SimpleCalc This sample uses the DataTable.Compute method to evaluate expressions in grid cells and displays the results using OwnerDraw.
Sorting This sample shows how to shows several sorting techniques. This sample uses the C1FlexGrid control.
SortNulls This sample shows how to use a custom sort to place null values at the bottom of the grid.
Splits This sample shows how to split a C1FlexGrid into multiple views. This sample uses the C1FlexGrid control.
SqlBuilder This sample shows how to a grid-based graphical interface for creating SQL statements.
StartEditing This sample shows how to implement a grid that stays in cell-editing mode. This sample uses the C1FlexGrid control.
Subtotals This sample shows how to create subtotals for multiple columns. This sample uses the C1FlexGrid control.
Themes This sample shows how to change the appearance of the grid to achieve one of several pre-defined looks.
ThreadedUpdate This sample shows how to update the grid from a different thread.
TreeCheck This sample shows how to add checkboxes to a grid tree. This sample uses the C1FlexGrid control.
TreeNode This sample shows how to manage an outline tree using the FlexGrid Node objects. This sample uses the C1FlexGrid control.
TriStateBound This sample shows how to provide three-state (grayable) values in Boolean columns. This sample calls the C1.Win.C1FlexGrid namespace.
UnboundColumns This sample shows how to additional support for unbound columns.
ZoomCell This sample shows how to zoom in on the selected cell.

C1FlexGrid for Mobile Devices Visual Basic Samples

Sample Description
Analyze This sample shows how to provide dynamic data sorting and grouping. This sample uses the C1FlexGrid control.
BarChart This sample shows how to draw bar charts using the grid cells. This sample uses the C1FlexGrid control.
EditData This sample demonstrates how to show different types of built-in editors and dynamic formatting. This sample uses the C1FlexGrid control.
ThreadedUpdate This sample shows how to update the grid from a different thread.

C1FlexGrid for Mobile Devices C# Samples

Sample Description
Analyze This sample shows how to provide dynamic data sorting and grouping. This sample uses the C1FlexGrid control.
BarChart This sample shows how to draw bar charts using the grid cells. This sample uses the C1FlexGrid control.
ContextMenu This sample demonstrates how to show a ContextMenu after selecting an item on the grid.
DataTree This sample demonstrates how to show hierarchical data in a drill-down grid.
EditData This sample demonstrates how to show different types of built-in editors and dynamic formatting.
MasterDetail This sample demonstrates how to show hierarchial data using two grids.
TransparentImages This sample shows how to render images with transparency.