Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]General Information
[Collapse]WinForms Controls
  Prerequisites
 [Expand]What's Installed
 [Expand]Build an Application
 [Collapse]Controls and Libraries
  [Expand]Forms and User Controls
  [Expand]Messages, Notifications and Dialogs
  [Expand]Editors and Simple Controls
  [Expand]Ribbon, Bars and Menu
  [Expand]Application UI Manager
  [Expand]Docking Library
  [Expand]Data Grid
  [Collapse]Vertical Grid
   [Expand]Overview
   [Expand]Fundamentals
   [Collapse]Concepts
     Filtering
    [Expand]Layouts
    [Expand]Binding to Data
    [Collapse]Rows
     [Expand]Row Operations
      Row Class Structure
      Row Properties
      Category Rows
      Editor Rows
      Multi-Editor Rows
      Fixed Rows
    [Expand]Records
    [Expand]Cells
    [Expand]In-place Editors
     Formatting
    [Expand]Appearances
     Hit Information
    [Expand]Custom Painting
    [Expand]Alpha Blending and Background Images
    [Expand]Customization Form
     Batch Modifications
    [Expand]Drag and Drop
   [Expand]Visual Elements
   [Expand]Design-Time Features
   [Expand]Examples
   [Expand]End-User Capabilities
   [Expand]Member Tables
  [Expand]Pivot Grid
  [Expand]Tree List
  [Expand]Chart Control
  [Expand]Diagrams
  [Expand]Gauges
  [Expand]Map Control
  [Expand]Scheduler
  [Expand]Spreadsheet
  [Expand]Rich Text Editor
  [Expand]Spell Checker
  [Expand]Form Layout Managers
  [Expand]Navigation Controls
  [Expand]Printing-Exporting
  [Expand]PDF Viewer
   Reporting
  [Expand]Snap
  [Expand]TreeMap Control
 [Expand]Common Features
  Get More Help
 [Expand]API Reference
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Document Server
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

Rows

The vertical grid controls (VGridControl and PropertyGridControl) arrange data in rows. The rows correspond to the fields in the underlying data source. The VGridControl can display multiple records, which are represented as columns, while the PropertyGridControl doesn't support multiple records. Instead it always displays a single value column which lists the property values of a bound object. This topic describes the types of rows that are available in the vertical grid controls and lists their common features. For information on records, refer to the Records section.

Expanded Row Types

There are three row types:

  • Category Rows

    Rows of this type do not display any data. They are used to group other rows and display the values of related fields. You can customize the caption and image displayed within a category row to provide explanatory information on the contents of the rows contained within the category.

  • Editor Rows

    This row type is used to display and edit the values of the data fields within your grid control and is the most used row type. It's similar to the columns in a standard (horizontal) grid control.

  • Multi-editor rows

    Rows of this type are used to display the values of several data fields. They are capable of displaying several cells within each record.

Expanded Fixed Rows

Fixed rows give you the ability to fix data rows in much the same way as you fix columns within the XtraGrid. These "fixed" rows are not scrolled vertically. See Fixed Rows to learn more.

Expanded Tree-Like Structure

As you can see from the above image, category rows have child rows and can be expanded/collapsed to show/hide their children. Actually, rows of each type can have child rows. Thus, you can arrange your data in a tree-like structure. Please refer to the Creating a Tree-Like Structure of Rows topic for details on how to do this.

When rows are arranged in a tree, parent rows contain their children in the BaseRow.ChildRows collection. Thus, you cannot traverse through all the rows directly. Generally, to traverse through objects arranged in this manner you need to implement recursive code. However, it's possible to avoid this by using the Rows Iterator technology.

The image below shows a VGridControl in which the Model editor row has three child rows: Category, Price and Liter.

Expanded Row Settings

All rows have a common ancestor - a BaseRow class which encapsulates the common settings for each type of rows. These common settings are the row height, expanded state, row options, appearance settings, visibility state, etc.

The settings specific to each type of row are stored in separate objects - row item settings. These settings depend upon the data displayed by rows. Refer to the Row Properties topic for details.

Expanded See Also

How would you rate this topic?​​​​​​​