Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

DataRowState Enum

Definition

Namespace:
System.Data
Assemblies:
netstandard.dll, System.Data.Common.dll
Assembly:
System.Data.Common.dll
Assembly:
System.Data.dll
Assembly:
netstandard.dll
Source:
DataRowState.cs
Source:
DataRowState.cs
Source:
DataView.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Gets the state of a DataRow object.

This enumeration supports a bitwise combination of its member values.

public enum class DataRowState
[System.Flags]
public enum DataRowState
[<System.Flags>]
type DataRowState = 
Public Enum DataRowState
Inheritance
DataRowState
Attributes

Fields

Name Value Description
Detached 1

The row has been created but is not part of any DataRowCollection. A DataRow is in this state immediately after it has been created and before it is added to a collection, or if it has been removed from a collection.

Unchanged 2

The row has not changed since AcceptChanges() was last called.

Added 4

The row has been added to a DataRowCollection, and AcceptChanges() has not been called.

Deleted 8

The row was deleted using the Delete() method of the DataRow.

Modified 16

The row has been modified and AcceptChanges() has not been called.

Examples

The following example first creates a new DataTable with one column, then creates a single DataRow. As the DataRow is created, added, modified, and deleted, its RowState is printed.

private void DemonstrateRowState() {
 //Run a function to create a DataTable with one column.
 DataTable myTable = MakeTable();
 DataRow myRow;

 // Create a new DataRow.
 myRow = myTable.NewRow();
 // Detached row.
 Console.WriteLine("New Row " + myRow.RowState);

 myTable.Rows.Add(myRow);
 // New row.
 Console.WriteLine("AddRow " + myRow.RowState);

 myTable.AcceptChanges();
 // Unchanged row.
 Console.WriteLine("AcceptChanges " + myRow.RowState);

 myRow["FirstName"] = "Scott";
 // Modified row.
 Console.WriteLine("Modified " + myRow.RowState);

 myRow.Delete();
 // Deleted row.
 Console.WriteLine("Deleted " + myRow.RowState);
}

private DataTable MakeTable(){
 // Make a simple table with one column.
 DataTable dt = new DataTable("myTable");
 DataColumn dcFirstName = new DataColumn("FirstName", Type.GetType("System.String"));
 dt.Columns.Add(dcFirstName);
 return dt;
}
Private Sub DemonstrateRowState()
 'Run a function to create a DataTable with one column.
 Dim dataTable As DataTable = MakeTable()
 Dim dataRow As DataRow

 ' Create a new DataRow.
 dataRow = dataTable.NewRow()
 ' Detached row.
 Console.WriteLine(String.Format("New Row {0}", dataRow.RowState))

 dataTable.Rows.Add(dataRow)
 ' New row.
 Console.WriteLine(String.Format("AddRow {0}", dataRow.RowState))

 dataTable.AcceptChanges()
 ' Unchanged row.
 Console.WriteLine(String.Format("AcceptChanges {0}", dataRow.RowState))

 dataRow("FirstName") = "Scott"
 ' Modified row.
 Console.WriteLine(String.Format("Modified {0}", dataRow.RowState))

 dataRow.Delete()
 ' Deleted row.
 Console.WriteLine(String.Format("Deleted {0}", dataRow.RowState))
End Sub

Private Function MakeTable() As DataTable
 ' Make a simple table with one column.
 Dim dt As New DataTable("dataTable")
 Dim firstName As New DataColumn("FirstName", _
 Type.GetType("System.String"))
 dt.Columns.Add(firstName)
 Return dt
End Function

Remarks

The DataRowState enumeration is returned by the RowState property of the DataRow class.

Applies to

See also


Feedback

Was this page helpful?