private void OnUndeleteRow(DataRow row, XmlElement rowElement)
{
XmlNode refRow;
XmlElement parent;
// make certain we weren't place somewhere else.
if (rowElement.ParentNode != null)
rowElement.ParentNode.RemoveChild(rowElement);
// Find the parent of RowNode to be inserted
DataRow parentRowInRelation = GetNestedParent(row);
if (parentRowInRelation == null)
{
parent = EnsureNonRowDocumentElement();
}
else
parent = GetElementFromRow(parentRowInRelation);
if ((refRow = GetRowInsertBeforeLocation(row, rowElement, parent)) != null)
parent.InsertBefore(rowElement, refRow);
else
parent.AppendChild(rowElement);
FixNestedChildren(row, rowElement);
}