DataRow.Delete DataRow.Delete DataRow.Delete DataRow.Delete Method

Definizione

Elimina l'oggetto DataRow.Deletes the DataRow.

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

Eccezioni

Esempi

L'esempio seguente crea una semplice DataTable con due colonne e dieci righe.The following example creates a simple DataTable with two columns and ten rows. Dopo aver eliminato alcuni DataRow elementi con il Delete metodo, una delle righe è chiamando il metodo RejectChanges.After deleting several DataRow items with the Delete method, one of the rows is undeleted by invoking RejectChanges.

private void DemonstrateDeleteRow()
{
    // Create a simple DataTable with two columns and ten rows.
    DataTable table = new DataTable("table");
    DataColumn idColumn = new DataColumn("id",
        Type.GetType("System.Int32"));
    idColumn.AutoIncrement=true;
    DataColumn itemColumn = new DataColumn("item", 
        Type.GetType("System.String"));
    table.Columns.Add(idColumn);
    table.Columns.Add(itemColumn);

    // Add ten rows.
    DataRow newRow;
     
    for(int i = 0; i <10; i++)
    {
        newRow = table.NewRow();
        newRow["item"] = "Item " + i;
        table.Rows.Add(newRow);
    }
    table.AcceptChanges();

    DataRowCollection itemColumns = table.Rows;
    itemColumns[0].Delete();
    itemColumns[2].Delete();
    itemColumns[3].Delete();
    itemColumns[5].Delete();
    Console.WriteLine(itemColumns[3].RowState.ToString());

    // Reject changes on one deletion.
    itemColumns[3].RejectChanges();

    // Change the value of the column so it stands out.
    itemColumns[3]["item"] = "Deleted, Undeleted, Edited";

    // Accept changes on others.
    table.AcceptChanges();

    // Print the remaining row values.
    foreach(DataRow row in table.Rows)
    {
        Console.WriteLine(row[0] + "\table" + row[1]);
    }
}
 Private Sub DemonstrateDeleteRow()
     ' Create a simple DataTable with two columns and ten rows.
     Dim table As New DataTable("table")
     Dim idColumn As New DataColumn("id", Type.GetType("System.Int32"))
     idColumn.AutoIncrement = True
     Dim itemColumn As New DataColumn("item", Type.GetType("System.String"))
     table.Columns.Add(idColumn)
     table.Columns.Add(itemColumn)

     ' Add ten rows.
     Dim newRow As DataRow
     
     Dim i As Integer
     For i = 0 To 9
         newRow = table.NewRow()
         newRow("item") = "Item " & i.ToString()
         table.Rows.Add(newRow)
     Next i
     table.AcceptChanges()

     Dim itemColumns As DataRowCollection = table.Rows
     itemColumns(0).Delete()
     itemColumns(2).Delete()
     itemColumns(3).Delete()
     itemColumns(5).Delete()
     Console.WriteLine(itemColumns(3).RowState.ToString())

     ' Reject changes on one deletion.
     itemColumns(3).RejectChanges()

     ' Change the value of the column so it stands out.
     itemColumns(3)("item") = "Deleted, Undeleted, Edited"

     ' Accept changes on others.
     table.AcceptChanges()

     ' Print the remaining row values.
     Dim row As DataRow
     For Each row In  table.Rows
         Console.WriteLine(row(0).ToString() & ControlChars.Tab _
            & row(1).ToString())
     Next row
End Sub

Commenti

Se il RowState della riga viene aggiunta, il RowState diventa Detached e la riga viene rimosso dalla tabella quando si chiama AcceptChanges.If the RowState of the row is Added, the RowState becomes Detached and the row is removed from the table when you call AcceptChanges.

Il RowState diventa Deleted dopo aver usato le Delete metodo su un oggetto esistente DataRow.The RowState becomes Deleted after you use the Delete method on an existing DataRow. Rimane Deleted finché non si chiama AcceptChanges.It remains Deleted until you call AcceptChanges. A questo punto, il DataRow viene rimosso dalla tabella.At this time, the DataRow is removed from the table.

Delete non deve essere chiamato in un ciclo foreach durante l'iterazione attraverso un DataRowCollection oggetto.Delete should not be called in a foreach loop while iterating through a DataRowCollection object. Delete modifica lo stato della raccolta.Delete modifies the state of the collection.

Può essere annullata l'eliminazione di una riga eliminata richiamando RejectChanges.A deleted row can be undeleted by invoking RejectChanges.

Nota

Il BeginEdit metodo sospende temporaneamente RowChanging gli eventi, ma l'operazione di eliminazione non esiste.The BeginEdit method temporarily suspends RowChanging events, but the delete operation does not.

Si applica a

Vedi anche