次の方法で共有


DataRows と DataRowViews

DataViewは、DataRowView オブジェクトの列挙可能なコレクションを公開します。 DataRowView オブジェクトは、基になるテーブル内の列の名前または序数参照によってインデックスが作成されるオブジェクト配列として値を公開します。 DataRow プロパティを使用して、Row によって公開されるにアクセスできます。

DataRowView を使用して値を表示する場合、RowStateFilter プロパティによって、基になる DataRow のどの行バージョンが公開されているかが決まります。 DataRow を使用してさまざまな行バージョンにアクセスする方法については、「行の状態と行のバージョン」を参照してください。

次のコード例では、テーブル内のすべての現在の値と元の値を表示します。

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();  
  }  
}  

こちらも参照ください