次の方法で共有


DataRow.RowState プロパティ

DataRowCollection とのリレーションシップに関する、行の現在の状態を取得します。

Public ReadOnly Property RowState As DataRowState
[C#]
public DataRowState RowState {get;}
[C++]
public: __property DataRowState get_RowState();
[JScript]
public function get RowState() : DataRowState;

プロパティ値

DataRowState 値の 1 つ。

解説

RowState の値は、(1) この行に対して実行された操作の種類、(2) DataRowAcceptChanges が呼び出されたかどうか、という 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)
 
    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)
 End Sub
 
 Private Function MakeTable() As DataTable
    ' Make a simple table with one column.
    Dim myTable As DataTable = New DataTable("myTable")
    Dim dcFirstName As DataColumn = New DataColumn("FirstName", Type.GetType("System.String"))
    myTable.Columns.Add(dcFirstName)
    MakeTable = myTable
 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 myTable = new DataTable("myTable");
    DataColumn dcFirstName = new DataColumn("FirstName", Type.GetType("System.String"));
    myTable.Columns.Add(dcFirstName);
    return myTable;
 }

[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* myTable = new DataTable(S"myTable");
    DataColumn* dcFirstName = new DataColumn(S"FirstName", Type::GetType(S"System.String"));
    myTable->Columns->Add(dcFirstName);
    return myTable;
 }

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

必要条件

プラットフォーム: 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

参照

DataRow クラス | DataRow メンバ | System.Data 名前空間 | AcceptChanges | BeginEdit | Add | CancelEdit | DataTable | DataRowView | Delete | EndEdit | NewRow