DataRow.AcceptChanges メソッド


前回 AcceptChanges() を呼び出した以降にこの行に対して行われたすべての変更をコミットします。Commits all the changes made to this row since the last time AcceptChanges() was called.

 void AcceptChanges();
public void AcceptChanges ();
member this.AcceptChanges : unit -> unit
Public Sub AcceptChanges ()


行がこのテーブルに属していません。The row does not belong to the table.

次の例では、最初に1つの列を持つ新しいを作成し、1 DataTable つのを作成し DataRow ます。The following example first creates a new DataTable with one column, and then creates a single DataRow. DataRowが作成、追加、変更、および削除されると、が印刷され RowState ます。As the DataRow is created, added, modified, and deleted, its RowState is printed.

private void DemonstrateAcceptChanges()
    //Run a function to create a DataTable with one column.
    DataTable table = MakeTable();
    DataRow row;

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

    // New row.
    Console.WriteLine("AddRow " + row.RowState);

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

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

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

private DataTable MakeTable()
    // Make a simple table with one column.
    DataTable table = new DataTable("table");
    DataColumn fnameColumn = new DataColumn(
        "FirstName", Type.GetType("System.String"));
    return table;
Private Sub DemonstrateAcceptChanges()
    ' Run a function to create a DataTable with one column.
    Dim table As DataTable = MakeTable()
    Dim row As DataRow 
    ' Create a new DataRow.
    row = table.NewRow()
    ' Detached row.
    Console.WriteLine("New Row " & row.RowState)
    ' New row.
    Console.WriteLine("AddRow " & row.RowState)
    ' Unchanged row.
    Console.WriteLine("AcceptChanges " & row.RowState)
    row("FirstName") = "Scott"
    ' Modified row.
    Console.WriteLine("Modified " & row.RowState)
    ' Deleted row.
    Console.WriteLine("Deleted " & row.RowState)
 End Sub
 Private Function MakeTable()As DataTable
    ' Make a simple table with one column.
    Dim table As New DataTable("table")
    Dim fnameColumn As New DataColumn( _
        "FirstName", Type.GetType("System.String"))
    MakeTable = table
 End Function


を呼び出すと AcceptChanges 、メソッドは、 EndEdit すべての編集を終了するために暗黙的に呼び出されます。When invoking AcceptChanges, the EndEdit method is implicitly called to end any edits. RowState行のが追加または変更された場合、は変更され RowState ません。If the RowState of the row was Added or Modified, the RowState becomes Unchanged. が削除され RowState た場合、行は削除されます。If the RowState was Deleted, the row is removed.

詳細については、 BeginEdit メソッドを参照してください。See the BeginEdit method for more information.

DataTableクラスには、 AcceptChanges テーブル全体に加えられた変更に影響するメソッドもあります。The DataTable class also has an AcceptChanges method which affects changes made to the whole table. 個々のデータ行に対する変更を受け入れて拒否する方法を示すコード例については、「 AcceptChanges と RejectChanges」を参照してください。For more information and a code example that demonstrates how to accept and reject changes to individual data rows, see AcceptChanges and RejectChanges.