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 でもサポート。 |
DataRow の Delete メソッドを使用して行が削除されました。 | 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