Yep, here's what I ended up having to do to get it working:Dim ds As New DataSet
Me.CalcClientBO.FillAll()
Me.ClientInfoBO.FillAll()ds.Tables.Add(CalcClientBO.CurrentDataTable)
ds.Tables.Add(ClientInfoBO.CurrentDataTable)
ds.Relations.Add(
"ListRelation", ds.Tables(0).Columns("ClientKey"), ds.Tables(1).Columns("ClientKey"), False)
grdList.DataSource = ds.Tables(0)
grdList.LevelTree.Nodes.Add("ListRelation", gvListDtl)
grdList.RefreshDataSource()It would be a lot easier if somehow the ParentRelationship set on the Parent/Child BO's could somehow create this relationship for you, so that you could still just set the BusinessBindingSource or the CurrentDataTable of the BO to the DataSource.