BaseRow.ChildRows Property
Gets a collection of child rows for a row.
Namespace: DevExpress.XtraVerticalGrid.Rows
Assembly: DevExpress.XtraVerticalGrid.v24.1.dll
NuGet Packages: DevExpress.Win.Navigation, DevExpress.Win.VerticalGrid
Declaration
[Browsable(false)]
[XtraSerializableProperty(true, true, true)]
public VGridRows ChildRows { get; }
Property Value
Type | Description |
---|---|
VGridRows | A VGridRows object representing a collection of child rows (if any) for a row. |
Remarks
Use the returned object’s methods and properties to manage the row’s collection of child rows. You can add, delete and access individual rows, enabling you to build and manage the row’s tree structure. Root rows can be accessed via the control’s VGridControlBase.Rows property.
Use the BaseRow.HasChildren property to determine if a row has children. You can also use the BaseRow.HasAsChild method to check if a specific row is a row’s child row.
If the row has no children, the ChildRows property returns an empty collection.
Example
The following example demonstrates how to move the focused row to a specific category row. The example assumes that a grid control has a particular category row whose name is categoryRow_Notes among its rows.
The image below displays the look & feel of a grid control before and after execution of the sample code.
Note that the code listed below is cited as an example of using the different properties of a row object (such as BaseRow.ChildRows
, BaseRow.HasAsParent, BaseRow.ParentRow). You can achieve the same results more easily by using the grid’s VGridControlBase.MoveRow method.
private void MoveFocusedToCategory() {
BaseRow focusedRow = vGridControl1.FocusedRow;
BaseRow categoryRow = vGridControl1.Rows["categoryRow_Notes"];
// checking whether the focused row already belongs to the category or
// becomes the category row itself
if (!(focusedRow.HasAsParent(categoryRow) | focusedRow == categoryRow)) {
// checking whether the focused row has a parent row or represents a root level row
if (focusedRow.ParentRow == null) {
// removing an object representing the focused row from
// the grid's collection of top level rows
vGridControl1.Rows.Remove(focusedRow);
}
else {
// removing an object representing the focused row from
// the rows collection of its parent row
focusedRow.ParentRow.ChildRows.Remove(focusedRow);
}
// adding an object representing the focused row
//to the end of the category row's chil rows collection
categoryRow.ChildRows.Add(focusedRow);
}
}