Retrieves the number of root objects in the Items collection.
Type | Description | |||
Long | A long value that indicates the count of root items into Items collection. |
A root item is an item that has no parent (ItemParent() = 0). Use the RootItem property of the Items object to enumerates the root items. Use the AddItem to add root items to the control. Use the InsertItem method to insert child items.
The following VB sample enumerates all root items:
Dim i As Long, n As Long With Grid1.Items n = .RootCount For i = 0 To n - 1 Debug.Print .CellValue(.RootItem(i), 0) Next End With
The following C++ sample enumerates all root items:
#include "Items.h" CItems items = m_grid.GetItems(); for ( long i = 0 ; i < items.GetRootCount(); i++ ) { COleVariant vtItem( items.GetRootItem(i) ), vtColumn( long(0) ); OutputDebugString( V2S( &items.GetCellValue( vtItem, vtColumn ) ) ); }
where the V2S function converts a VARIANT expression to a string expression and looks like:
static CString V2S( VARIANT* pv, LPCTSTR szDefault = _T("") ) { if ( pv ) { if ( pv->vt == VT_ERROR ) return szDefault; COleVariant vt; vt.ChangeType( VT_BSTR, pv ); return V_BSTR( &vt ); } return szDefault; }
if you are using MFC, or
static string V2S( VARIANT* pv, LPCTSTR szDefault = _T("") ) { if ( pv ) { if ( pv->vt == VT_ERROR ) return szDefault; CComVariant vt; if ( SUCCEEDED( vt.ChangeType( VT_BSTR, pv ) ) ) { USES_CONVERSION; return OLE2T(V_BSTR( &vt )); } } return szDefault; }
if you are using STL.
The following VB.NET sample enumerates all root items:
With AxGrid1.Items Dim i As Integer For i = 0 To .RootCount - 1 Debug.Print(.CellValue(.RootItem(i), 0)) Next End With
The following C# sample enumerates all root items:
for (int i = 0; i < axGrid1.Items.RootCount; i++) { object strValue = axGrid1.Items.get_CellValue(axGrid1.Items.get_RootItem(i), 0); System.Diagnostics.Debug.WriteLine(strValue != null ? strValue.ToString() : ""); }
The following VFP sample enumerates all root items:
with thisform.Grid1.Items local i for i = 0 to .RootCount - 1 .DefaultItem = .RootItem(i) wait window nowait .CellValue(0,0) next endwith