Listbox Jerarquico con tablas relacionadas

Amigos, tengo un problema que no se como resolver:

Quiero hacer un LISTBOX con jerarquas con dos tablas relacionadas, por ejemplo (Clientes y Facturas) El elemento padre del Listbox sera el Nombre de Cliente y los Elementos Hijos las facturas de el cliente PADRE. Me podrn ayudar con un cdigo de ejemplo ?

De antemano, gracias!

establecer la propiedad AllowExpandableRows a true, para iniciar valores en en listbox puede ser:

[code]Var rows As RowSet

Try
rows= mDb.SelectSQL(“SELECT * FROM city;”)
Catch exc As DatabaseException
MessageBox exc.Message
End Try

If rows Is Nil Then Return

For Each row As DatabaseRow In rows
ListBox1.AddExpandableRow row.Column(“city”).StringValue
Listbox1.RowTagAt(Listbox1.LastRowIndex) = row.Column(“city_id”).StringValue
Next
rows.Close[/code]

el RowTagAt es un valor oculto en cada fila, es la relacin entre las dos tablas

en el evento ExpandRow colocar:

[code]Sub ExpandRow(row As Integer) Handles ExpandRow
Var cityId As String= Me.RowTagAt(row)
Var rows As RowSet

Try
rows = mDb.SelectSQL(“SELECT * FROM address WHERE city_id=?”, cityId)
Catch exc As DatabaseException
MessageBox "Error: " + exc.Message
End Try

If rows Is Nil Then Return

For Each rowData As DatabaseRow In rows
ListBox1.AddRow rowData.Column(“address”).StringValue
Next
rows.Close

End Sub
[/code]

y en el evento DoubleClick del listbox:

Me.RowExpandedAt(Me.SelectedRowIndex) = Not Me.RowExpandedAt(Me.SelectedRowIndex)

puede usar mas columnas.

Bernardo Monsalve.

Gracias estimado ! Ya implemente el cdigo, me estoy re-acostumbrando a XOJO nuevamente. Agradezco tu tiempo y tu apoyo.

Atentamente

Juan Martnez Man