Retrieves the first child item of a specified item.


| Type | Description | |||
| Item as HITEM | A long expression that indicates the item's handle. | |||
| HITEM | A long expression that indicates the item's handle that indicates the first child item of the Item |
If the ItemChild property gets 0, the item has no child items. Use the ItemChild property to get the first child of an item. The NextVisibleItem or NextSiblingItem gets the next visible, sibling item. Use the ChildCount property to count the number of child items. Use the ItemHasChildren property to built a virtual grid. A virtual grid loads items when the user expands an item. Use the ItemParent property to retrieve the handle of the parent item. The control displays a +/- sign to parent items, if the HasButtons property is not zero, the ItemChild property is not empty, or the ItemHasChildren property is True.
The following VB function recursively enumerates the item and all its child items:
Sub RecItem(ByVal c As EXGRIDLibCtl.Grid, ByVal h As HITEM)
If Not (h = 0) Then
Dim hChild As HITEM
With c.Items
Debug.Print .CellCaption(h, 0)
hChild = .ItemChild(h)
While Not (hChild = 0)
RecItem c, hChild
hChild = .NextSiblingItem(hChild)
Wend
End With
End If
End Sub
The following C++ function recursively enumerates the item and all its child items:
void RecItem( CGrid* pGrid, long hItem )
{
COleVariant vtColumn( (long)0 );
if ( hItem )
{
CItems items = pGrid->GetItems();
CString strCaption = V2S( &items.GetCellValue( COleVariant( hItem ), vtColumn ) ), strOutput;
strOutput.Format( "Cell: '%s'\n", strCaption );
OutputDebugString( strOutput );
long hChild = items.GetItemChild( hItem );
while ( hChild )
{
RecItem( pGrid, hChild );
hChild = items.GetNextSiblingItem( hChild );
}
}
}
The following VB.NET function recursively enumerates the item and all its child items:
Shared Sub RecItem(ByVal c As AxEXGRIDLib.AxGrid, ByVal h As Integer)
If Not (h = 0) Then
Dim hChild As Integer
With c.Items
Debug.WriteLine(.CellCaption(h, 0))
hChild = .ItemChild(h)
While Not (hChild = 0)
RecItem(c, hChild)
hChild = .NextSiblingItem(hChild)
End While
End With
End If
End Sub
The following C# function recursively enumerates the item and all its child items:
internal void RecItem(AxEXGRIDLib.AxGrid grid, int hItem)
{
if (hItem != 0)
{
EXGRIDLib.Items items = grid.Items;
object caption = items.get_CellValue( hItem, 0 );
System.Diagnostics.Debug.WriteLine(caption != null ? caption.ToString() : "");
int hChild = items.get_ItemChild(hItem);
while (hChild != 0)
{
RecItem(grid, hChild);
hChild = items.get_NextSiblingItem(hChild);
}
}
}
The following VFP function recursively enumerates the item and all its child items ( recitem method ):
LPARAMETERS h
with thisform.Grid1
If ( h != 0 ) Then
local hChild
With .Items
.DefaultItem = h
wait window .CellCaption(0, 0)
hChild = .ItemChild(h)
do While (hChild != 0)
thisform.recitem(hChild)
hChild = .NextSiblingItem(hChild)
enddo
EndWith
EndIf
endwith