Partage via


DataRows et DataRowViews

Un objet DataView expose une collection énumérable d’objets DataRowView. Les objets DataRowView exposent les valeurs sous forme de tableaux d’objets indexés soit en fonction du nom, soit en fonction de la référence ordinale de la colonne dans la table sous-jacente. Vous pouvez accéder à l’objet DataRow exposé par la DataRowView à l’aide de la propriété Row de la DataRowView.

Lorsque vous affichez des valeurs à l’aide d’une DataRowView, la propriété RowStateFilter de la DataView détermine la version de ligne de la DataRow sous-jacente qui est exposée. Pour plus d’informations sur l’accès à différentes versions de lignes à l’aide d’une DataRow, consultez États et versions des lignes.

L'exemple de code suivant affiche toutes les valeurs actuelles et d'origine d'une table.

Dim catView As DataView = New DataView(catDS.Tables("Categories"))  
Console.WriteLine("Current Values:")  
WriteView(catView)  
Console.WriteLine("Original Values:")  
catView.RowStateFilter = DataViewRowState.ModifiedOriginal  
WriteView(catView)
  
Public Shared Sub WriteView(thisDataView As DataView)  
  Dim rowView As DataRowView  
  Dim i As Integer  
  
  For Each rowView In thisDataView  
    For i = 0 To thisDataView.Table.Columns.Count - 1  
      Console.Write(rowView(i) & vbTab)  
    Next  
    Console.WriteLine()  
  Next  
End Sub  
DataView catView = new DataView(catDS.Tables["Categories"]);  
Console.WriteLine("Current Values:");  
WriteView(catView);  
Console.WriteLine("Original Values:");  
catView.RowStateFilter = DataViewRowState.ModifiedOriginal;  
WriteView(catView);  
  
public static void WriteView(DataView thisDataView)  
{  
  foreach (DataRowView rowView in thisDataView)  
  {  
    for (int i = 0; i < thisDataView.Table.Columns.Count; i++)  
      Console.Write(rowView[i] + "\t");  
    Console.WriteLine();  
  }  
}  

Voir aussi