I may have just found a beter way on MSDN:
Code:
Dim catTable As DataTable = catDS.Tables("Categories")
Dim prodTable As DataTable = catDS.Tables("Products")
' Create a relation between the Categories and Products tables.
Dim catProdRel As DataRelation = catDS.Relations.Add("CatProdRel", _
catTable.Columns("CategoryID"), _
prodTable.Columns("CategoryID"))
' Create DataViews for the Categories and Products tables.
Dim catView As DataView = New DataView(catTable, "", "CategoryName", DataViewRowState.CurrentRows)
Dim prodView As DataView
' Iterate through the Categories table.
Dim catDRV, prodDRV As DataRowView
For Each catDRV In catView
Console.WriteLine(catDRV("CategoryName"))
' Create a DataView of the child product records.
prodView = catDRV.CreateChildView(catProdRel)
prodView.Sort = "ProductName"
For Each prodDRV In prodView
Console.WriteLine(vbTab & prodDRV("ProductName"))
Next Next
Bookmarks