Retrieves or sets a value indicating the radio group where the cell is contained.
Type | Description | |||
Item as Variant | A long expression that indicates the item's handle. | |||
ColIndex as Variant | A long expression that indicates the column's index, a string expression that indicates the column's caption or the column's key. | |||
Long | A long value that identifies the cell's radio group. |
A radio cell cannot be contained by two different radio groups. When a cell state is changed the control fires CellStateChanged event. To change the radio cell state you have to call CellState property. The value for radio group number is not important. You can allocate any number that you want. To add or remove a cell to a given radio group you have to use CellRadioGroup property. By default, when a cell of radio type is created the radio cell is not grouped to any of existent radio groups.
The following sample shows how to set the radio type for all cells of the first column in the first group, and group all of them in the same radio group ( 1234 ):
Dim h As Variant With ExplorerTree1.Groups(0) .BeginUpdate With .Items For Each h In ExplorerTree1.Groups(0).Items .CellHasRadioButton(h, 0) = True .CellRadioGroup(h, 0) = 1234 Next End With .EndUpdate End With
or
Private Sub ExplorerTree1_AddItem(ByVal Group As EXPLORERTREELibCtl.IGroup, ByVal Item As EXPLORERTREELibCtl.HITEM) With Group.Items .CellHasRadioButton(Item, 0) = True .CellRadioGroup(Item, 0) = 1234 End With End Sub
To find out the radio cell that is checked in the radio group 1234 you have to call: MsgBox Group.Items.CellCaption(, Group.Items.CellChecked(1234))
The following sample group all cells of the first column into a radio group, and display the cell's checked on the radio group when the state of a radio group has been changed:
Private Sub ExplorerTree1_AddItem(ByVal Group As EXPLORERTREELibCtl.IGroup, ByVal Item As EXPLORERTREELibCtl.HITEM) With Group.Items .CellHasRadioButton(Item, 0) = True .CellRadioGroup(Item, 0) = 1234 End With End Sub Private Sub ExplorerTree1_CellStateChanged(ByVal Group As EXPLORERTREELibCtl.IGroup, ByVal Item As EXPLORERTREELibCtl.HITEM, ByVal ColIndex As Long) Debug.Print "In the 1234 radio group the """ & Group.Items.CellCaption(, Group.Items.CellChecked(1234)) & """ is checked." End Sub
Note: A cell is the intersection of an item with a column. All properties that has an Item and a ColIndex parameters are referring to a cell. The Item parameter represents the handle of an item, and the ColIndex parameter indicates an index ( a numerical value, see Column.Index property ) of a column , the column's caption ( a string value, see Column.Caption property ), or a handle to a cell. Here's few hints how to use properties with Item and ColIndex parameters:
Group.Items.CellBold(, Group.Items.ItemCell(Group.Items(0), 0)) = True Group.Items.CellBold(Group.Items(0), 0) = True Group.Items.CellBold(Group.Items(0), "ColumnName") = True