Afficher en anglais

Partage via


DataViewRowState Énumération

Définition

Décrit la version des données de DataRow.

Cette énumération prend en charge une combinaison au niveau du bit de ses valeurs membres.

C#
[System.Flags]
public enum DataViewRowState
Héritage
DataViewRowState
Attributs

Champs

Nom Valeur Description
Added 4

Nouvelle ligne.

CurrentRows 22

Lignes en cours, y compris les lignes non modifiées, les nouvelles lignes et les lignes modifiées. Par défaut, DataViewRowState a la valeur CurrentRows.

Deleted 8

Ligne supprimée.

ModifiedCurrent 16

Version actuelle des données d'origine qui ont été modifiées (consultez ModifiedOriginal).

ModifiedOriginal 32

Version d'origine des données qui ont été modifiées. (Même si les données ont été modifiées, elles sont disponibles en tant que ModifiedCurrent).

None 0

Aucun.

OriginalRows 42

Lignes d'origine, y compris les lignes non modifiées et les lignes supprimées.

Unchanged 2

Ligne non modifiée.

Exemples

Dans l’exemple DataTable suivant est créé avec une seule colonne. Les données sont modifiées et le RowStateFilter de est DataView défini pour afficher différents ensembles de lignes, en fonction du 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"]);
    }
}

Remarques

Les DataViewRowState valeurs sont utilisées pour récupérer une version particulière de données à partir d’un DataRow, ou pour déterminer quelles versions existent.

Définissez la RowStateFilter propriété de pour spécifier la DataView ou les versions des données que vous souhaitez afficher.

Vous pouvez utiliser l’opérateur booléen Ou avec les valeurs pour obtenir plusieurs versions.

Utilise DataTableDataViewRowState dans la Select méthode .

S’applique à

Produit Versions
.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

Voir aussi