次の方法で共有


DataRowState 列挙体

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

この列挙体には、メンバ値をビットごとに演算するための FlagsAttribute 属性が含まれています。

<Flags>
<Serializable>
Public Enum DataRowState
[C#]
[Flags]
[Serializable]
public enum DataRowState
[C++]
[Flags]
[Serializable]
__value public enum DataRowState
[JScript]
public
   Flags
 Serializable
enum DataRowState

解説

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

メンバ

メンバ名 説明
Added

.NET Compact Framework でもサポート。

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

.NET Compact Framework でもサポート。

DataRowDelete メソッドを使用して行が削除されました。 8
Detached

.NET Compact Framework でもサポート。

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

.NET Compact Framework でもサポート。

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

.NET Compact Framework でもサポート。

前回 AcceptChanges が呼び出されて以降、この行は変更されていません。 2

使用例

[Visual Basic, C#, C++] 初めに 1 列の新しい DataTable を作成してから、単一の DataRow を作成する例を次に示します。 DataRow の作成、追加、変更、および削除時に、その RowState が出力されます。

 
Private Sub DemonstrateRowState()
    'Run a function to create a DataTable with one column.
    Dim myTable As DataTable = MakeTable()
    Dim myRow As DataRow
    
    ' Create a new DataRow.
    myRow = myTable.NewRow()
    ' Detached row.
    Console.WriteLine("New Row " + myRow.RowState.ToString())
       
    myTable.Rows.Add(myRow)
    ' New row.
    Console.WriteLine("AddRow " + myRow.RowState.ToString())
       
    myTable.AcceptChanges()
    ' Unchanged row.
    Console.WriteLine("AcceptChanges " + myRow.RowState.ToString())
       
    myRow("FirstName") = "Scott"
    ' Modified row.
    Console.WriteLine("Modified " + myRow.RowState.ToString())
     
    myRow.Delete()
    ' Deleted row.
    Console.WriteLine("Deleted " + myRow.RowState.ToString())
End Sub    
   
Private Function MakeTable() As DataTable
    ' Make a simple table with one column.
    Dim dt As New DataTable("myTable")
    Dim dcFirstName As New DataColumn("FirstName", _
       Type.GetType("System.String"))
    dt.Columns.Add(dcFirstName)
    Return dt
End Function

[C#] 
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;
}

[C++] 
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(S"New Row {0}", __box(myRow->RowState));
 
    myTable->Rows->Add(myRow);
    // New row.
    Console::WriteLine(S"AddRow {0}", __box(myRow->RowState));
 
    myTable->AcceptChanges();
    // Unchanged row.
    Console::WriteLine(S"AcceptChanges {0}", __box(myRow->RowState));
 
    myRow->Item[S"FirstName"] = S"Scott";
    // Modified row.
    Console::WriteLine(S"Modified {0}", __box(myRow->RowState));
 
    myRow->Delete();
    // Deleted row.
    Console::WriteLine(S"Deleted {0}", __box(myRow->RowState));
 }
 
 DataTable* MakeTable(){
    // Make a simple table with one column.
    DataTable* dt = new DataTable(S"myTable");
    DataColumn* dcFirstName = new DataColumn(S"FirstName", Type::GetType(S"System.String"));
    dt->Columns->Add(dcFirstName);
    return dt;
 }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Data

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: System.Data (System.Data.dll 内)

参照

System.Data 名前空間 | DataRow | Delete | NewRow | DataRowCollection