The way you could do it, is load a dataset with the xml and merge the datasets.
Dim dsFirst As New DataSet() Dim dsMerge As New DataSet()' Create new FileStream with which to read the schema. Dim fsReadXmlFirst As New System.IO.FileStream(myXMLfileFirst, System.IO.FileMode.Open) Dim fsReadXmlMerge As New System.IO.FileStream(myXMLfileMerge, System.IO.FileMode.Open) Try dsFirst.ReadXml(fsReadXmlFirst) dsMerge.ReadXml(fsReadXmlMerge) Dim str As String = "Merge Table(0) Row Count = "& dsMerge.Tables(0).Rows.Count str = str & Chr(13) & "Merge Table(1) Row Count = "& dsMerge.Tables(1).Rows.Count str = str & Chr(13) & "Merge Table(2) Row Count = "& dsMerge.Tables(2).Rows.Count MsgBox(str) dsMerge.Merge(dsFirst, True) DataGridParent.DataSource = dsMerge DataGridParent.DataMember = "rulefile" DataGridChild.DataSource = dsMerge DataGridChild.DataMember = "rule" str = "" str = "Merge Table(0) Row Count = "& dsMerge.Tables(0).Rows.Count str = str & Chr(13) & "Merge Table(1) Row Count = "& dsMerge.Tables(1).Rows.Count str = str & Chr(13) & "Merge Table(2) Row Count = "& dsMerge.Tables(2).Rows.Count MsgBox(str)