We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date

GroupingGrid: Get cell''s source object by clicking on the cell

Hi again! I''d like to know how to get a certain source object of a Grouping Grid by clicking on the cell that is suppossed to be displaying its info. I can''t find a way to do this, but I''m sure that there has to be an easy way. Is there any GetData method that allow to reach the underlying data of a cell? My DataSource is an ArrayList of ArrayList, and I have a GroupingGrid with a nested table. Thanks a lot!

3 Replies

AD Administrator Syncfusion Team April 22, 2005 02:33 PM UTC

Here is code you can use in teh TableControlCellClick event to get the clicked value.
'' subscribe to the event
      AddHandler Me.gridGroupingControl1.TableControlCellClick, AddressOf TableControl_CellClick


''the event handler

    Private Sub TableControl_CellClick(ByVal sender As Object, ByVal e As GridTableControlCellClickEventArgs)
        Dim cc As GridCurrentCell = e.TableControl.CurrentCell
        Dim style As GridTableCellStyleInfo = e.TableControl.Model(cc.RowIndex, cc.ColIndex)
        Dim recRow As GridRecordRow = style.TableCellIdentity.DisplayElement
        If Not recRow Is Nothing AndAlso Not recRow.ParentRecord Is Nothing Then
            Dim val As Object = recRow.ParentRecord.GetValue(style.TableCellIdentity.Column.MappingName)
            Console.WriteLine(val.ToString())
        End If
    End Sub


AD Administrator Syncfusion Team April 22, 2005 02:49 PM UTC

Looks like the checks in teh above code are not sufficient. Try this code instead.
Private Sub TableControl_CellClick(ByVal sender As Object, ByVal e As GridTableControlCellClickEventArgs)
        Dim cc As GridCurrentCell = e.TableControl.CurrentCell
        Dim style As GridTableCellStyleInfo = e.TableControl.Model(cc.RowIndex, cc.ColIndex)
        If style.TableCellIdentity.TableCellType = GridTableCellType.RecordFieldCell Or style.TableCellIdentity.TableCellType = GridTableCellType.AlternateRecordFieldCell Then
            Dim recRow As GridRecordRow = style.TableCellIdentity.DisplayElement
            Dim val As Object = recRow.ParentRecord.GetValue(style.TableCellIdentity.Column.MappingName)
            Console.WriteLine(val.ToString())
        End If
    End Sub


RO Roberto Obispo April 25, 2005 07:59 AM UTC

Works great! Thanks a lot, Clay. I''ve finally used recRow.GetData() to get the source record. Again, thank you very much for your support!

Loader.
Up arrow icon