Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ OnRowChanged()

void System.Xml.XmlDataDocument.OnRowChanged ( object sender,
DataRowChangeEventArgs args )
inlineprivate

Definition at line 1592 of file XmlDataDocument.cs.

1593 {
1595 {
1596 return;
1597 }
1598 _ignoreXmlEvents = true;
1600 IsFoliationEnabled = false;
1601 try
1602 {
1603 DataRow row = args.Row;
1604 XmlBoundElement element = row.Element;
1605 switch (args.Action)
1606 {
1607 case DataRowAction.Add:
1608 OnAddRow(row);
1609 break;
1610 case DataRowAction.Delete:
1611 OnDeleteRow(row, element);
1612 break;
1613 case DataRowAction.Rollback:
1614 switch (_rollbackState)
1615 {
1616 case DataRowState.Deleted:
1617 OnUndeleteRow(row, element);
1618 UpdateAllColumns(row, element);
1619 break;
1620 case DataRowState.Added:
1621 element.ParentNode.RemoveChild(element);
1622 break;
1623 case DataRowState.Modified:
1624 OnColumnValuesChanged(row, element);
1625 break;
1626 }
1627 break;
1628 case DataRowAction.Change:
1629 OnColumnValuesChanged(row, element);
1630 break;
1631 case DataRowAction.Commit:
1632 if (row.RowState == DataRowState.Detached)
1633 {
1634 element.RemoveAll();
1635 }
1636 break;
1637 }
1638 }
1639 finally
1640 {
1642 _ignoreXmlEvents = false;
1643 }
1644 }
void Add(TKey key, TValue value)
void UpdateAllColumns(DataRow row, XmlBoundElement rowElement)
void OnDeleteRow(DataRow row, XmlBoundElement rowElement)
void OnColumnValuesChanged(DataRow row, XmlBoundElement rowElement)
void OnUndeleteRow(DataRow row, XmlElement rowElement)

References System.Xml.XmlDataDocument._ignoreDataSetEvents, System.Xml.XmlDataDocument._ignoreXmlEvents, System.Xml.XmlDataDocument._rollbackState, System.Collections.Generic.Dictionary< TKey, TValue >.Add(), System.Xml.Dictionary, System.Xml.XmlDataDocument.IsFoliationEnabled, System.Xml.XmlDataDocument.OnAddRow(), System.Xml.XmlDataDocument.OnColumnValuesChanged(), System.Xml.XmlDataDocument.OnDeleteRow(), System.Xml.XmlDataDocument.OnUndeleteRow(), System.Xml.XmlElement.ParentNode, System.Xml.XmlElement.RemoveAll(), and System.Xml.XmlDataDocument.UpdateAllColumns().

Referenced by System.Xml.XmlDataDocument.BindToTable().