Some of the key features of FlexGrid for WinForms that you may find useful include:
Set up columns and styles at design time with easy-to-use editors accessible from the SmartTag. The column editor allows you to insert and remove columns, reorder columns, adjust column widths, and more. Modify existing styles and add custom styles with the style editor. Completely manage your grid without writing any code!
Use simple text editing, drop-down lists and combo lists, cell buttons, masks, and advanced data validation to control the editing process. For example, you can use an input mask to provide a template that automatically validates data as your users type, or choose to prevent users from editing specific columns altogether.
Print your grid with a single statement! You have control over paper orientation, margins, and footer text, or you can show a dialog box to let your users select and set up the printer. Printing events allow you to control page breaks, add repeating header rows, or add custom elements to each page.
View data the way that's best for you and your users with powerful properties and methods. For example, you can summarize data and add aggregate values with the Subtotal method or use the Tree property to display hierarchical views of the data.
Use the grid in bound mode, where it displays data from any .NET data source, including ADO.NET and DataObjects for .NET, or in unbound mode, where the grid itself manages the data.
FlexGrid supports Visual Styles that mimic the styles available in Office 2007 and 2010, including Blue, Silver, and Black.
When FlexGrid is bound to a hierarchical data source, each master record can be expanded/collapsed to show/hide the details in child grids, which may in turn contain more details. The result is a "data tree" similar to the type of grid presented by Microsoft Access when displaying hierarchical data. This is accomplished by deriving a control (C1FlexDataTree) from the C1FlexGrid control. When bound, the control detects subordinate data sources and creates additional instances of itself to display child tables.
By setting the IsNode property for certain rows you can transform FlexGrid into a TreeView. You get a TreeView that has all the features of a rich datagrid.
Each grid cell can display images in addition to data. You can even bind grid columns to image lists, an easy and efficient way to display database information graphically.
Make the grid look the way you want it to by painting special effects such as lines, bitmaps, and icons in appropriate grid cells. You can also scale images and add transparency.
Refer to columns by name instead of position, if desired. Column keys are automatically assigned to field names when the grid is data-bound, or you may assign them with code. You can later refer to a column using a ColIndex(ColKey) syntax, which will retrieve the column you want even if your user has moved it to a different position on the grid.
Merge contiguous like-valued cells, making them span multiple rows or columns to enhance appearance or clarity.
Calculate totals, averages, and other statistics for ranges of cells with a single statement!
Load from and save grid contents to text, .xls, .xlsx (OpenXml format) files, or Open XML files with other extensions. You can also load grid data from a database using DataReader objects.
Allow users to apply filters to each column on the grid by setting the AllowFiltering property.
Instant Search Panel
Search the entire grid in one go and locate entries among millions of records instantly by using FlexGrid's Instant Search Panel.