Leer en inglés

Compartir a través de


DataViewRowState Enumeración

Definición

Describe la versión de datos de un DataRow.

Esta enumeración admite una combinación bit a bit de sus valores de miembro.

C#
[System.Flags]
public enum DataViewRowState
Herencia
DataViewRowState
Atributos

Campos

Nombre Valor Description
Added 4

Una fila nueva.

CurrentRows 22

Filas actuales, incluidas las filas sin modificar, las nuevas y las modificadas. De manera predeterminada, DataViewRowState se establece en CurrentRows.

Deleted 8

Una fila eliminada.

ModifiedCurrent 16

Versión actual de los datos originales modificados (vea ModifiedOriginal).

ModifiedOriginal 32

Versión original de los datos modificados. (Aunque se hayan modificado los datos posteriormente, están disponibles como ModifiedCurrent).

None 0

Ninguno.

OriginalRows 42

Filas originales, incluidas las filas sin modificar y las eliminadas.

Unchanged 2

Una fila sin modificar.

Ejemplos

En el ejemplo DataTable siguiente se crea con una sola columna. Los datos se cambian y el RowStateFilter de se establece para mostrar diferentes conjuntos de DataView filas, según .DataViewRowState

C#
static private void DemonstrateRowState()
{
    // Create a DataTable with one column.
    DataTable dataTable = new DataTable("dataTable");
    DataColumn dataColumn = new DataColumn("dataColumn");
    dataTable.Columns.Add(dataColumn);

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

    // Create a DataView with the table.
    DataView dataView = new DataView(dataTable);

    // Change one row's value:
    dataTable.Rows[1]["dataColumn"] = "Hello";

    // Add one row:
    dataRow = dataTable.NewRow();
    dataRow["dataColumn"] = "World";
    dataTable.Rows.Add(dataRow);

    // Set the RowStateFilter to display only added and modified rows.
    dataView.RowStateFilter = DataViewRowState.Added
        | DataViewRowState.ModifiedCurrent;

    // Print those rows. Output = "Hello" "World";
    PrintView(dataView, "ModifiedCurrent and Added");

    // Set filter to display on originals of modified rows.
    dataView.RowStateFilter = DataViewRowState.ModifiedOriginal;
    PrintView(dataView, "ModifiedOriginal");

    // Delete three rows.
    dataTable.Rows[1].Delete();
    dataTable.Rows[2].Delete();
    dataTable.Rows[3].Delete();

    // Set the RowStateFilter to display only Added and modified rows.
    dataView.RowStateFilter = DataViewRowState.Deleted;
    PrintView(dataView, "Deleted");

    //Set filter to display only current.
    dataView.RowStateFilter = DataViewRowState.CurrentRows;
    PrintView(dataView, "Current");

    // Set filter to display only unchanged rows.
    dataView.RowStateFilter = DataViewRowState.Unchanged;
    PrintView(dataView, "Unchanged");

    // Set filter to display only original rows.
    dataView.RowStateFilter = DataViewRowState.OriginalRows;
    PrintView(dataView, "OriginalRows");
}

static private void PrintView(DataView dataView, string label)
{
    Console.WriteLine("\n" + label);
    for (int i = 0; i < dataView.Count; i++)
    {
        Console.WriteLine(dataView[i]["dataColumn"]);
    }
}

Comentarios

Los DataViewRowState valores se usan para recuperar una versión determinada de los datos de o DataRowpara determinar qué versiones existen.

Establezca la RowStateFilter propiedad de DataView para especificar qué versión o versiones de datos desea ver.

Puede usar el operador booleano O con los valores para obtener más de una versión.

utiliza DataTableDataViewRowState en el Select método .

Se aplica a

Producto Versiones
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Consulte también