DataRowState 列挙型

定義

DataRow オブジェクトの状態を取得します。

この列挙体は、メンバー値のビットごとの組み合わせをサポートしています。

public enum class DataRowState
[System.Flags]
public enum DataRowState
[<System.Flags>]
type DataRowState = 
Public Enum DataRowState
継承
DataRowState
属性

フィールド

Added 4

行が DataRowCollection に追加されましたが、AcceptChanges() が呼び出されていません。

Deleted 8

Delete()DataRow メソッドを使用して行が削除されました。

Detached 1

行は作成されましたが、DataRowCollection の一部ではありません。 DataRow は、作成された直後からコレクションに追加されるまでの間、またはコレクションから削除された場合に、この状態になります。

Modified 16

行が変更されましたが、AcceptChanges() が呼び出されていません。

Unchanged 2

行は AcceptChanges() が最後に呼び出されてから変更されていません。

次の例では、最初に 1 つの列で新しい DataTable を作成し、次に 1 つの DataRowを作成します。 DataRowが作成、追加、変更、および削除されると、その RowState が印刷されます。

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

注釈

DataRowState 列挙は、RowState クラスの DataRow プロパティによって返されます。

適用対象

こちらもご覧ください