DataRow クラス

定義

DataTable 内のデータ行を表します。

public ref class DataRow
public class DataRow
[System.Serializable]
public class DataRow
type DataRow = class
[<System.Serializable>]
type DataRow = class
Public Class DataRow
継承
DataRow
属性

次の例では、 オブジェクトの メソッドをNewRow呼び出して新しい DataRowDataTable作成します。

private void CreateNewDataRow()
{
    // Use the MakeTable function below to create a new table.
    DataTable table;
    table = MakeNamesTable();

    // Once a table has been created, use the
    // NewRow to create a DataRow.
    DataRow row;
    row = table.NewRow();

    // Then add the new row to the collection.
    row["fName"] = "John";
    row["lName"] = "Smith";
    table.Rows.Add(row);

    foreach(DataColumn column in table.Columns)
        Console.WriteLine(column.ColumnName);
    dataGrid1.DataSource=table;
}

private DataTable MakeNamesTable()
{
    // Create a new DataTable titled 'Names.'
    DataTable namesTable = new DataTable("Names");

    // Add three column objects to the table.
    DataColumn idColumn = new  DataColumn();
    idColumn.DataType = System.Type.GetType("System.Int32");
    idColumn.ColumnName = "id";
    idColumn.AutoIncrement = true;
    namesTable.Columns.Add(idColumn);

    DataColumn fNameColumn = new DataColumn();
    fNameColumn.DataType = System.Type.GetType("System.String");
    fNameColumn.ColumnName = "Fname";
    fNameColumn.DefaultValue = "Fname";
    namesTable.Columns.Add(fNameColumn);

    DataColumn lNameColumn = new DataColumn();
    lNameColumn.DataType = System.Type.GetType("System.String");
    lNameColumn.ColumnName = "LName";
    namesTable.Columns.Add(lNameColumn);

    // Create an array for DataColumn objects.
    DataColumn [] keys = new DataColumn [1];
    keys[0] = idColumn;
    namesTable.PrimaryKey = keys;

    // Return the new DataTable.
    return namesTable;
}
Private Sub CreateNewDataRow()
    ' Use the MakeTable function below to create a new table.
    Dim table As DataTable
    table = MakeNamesTable()

    ' Once a table has been created, use the 
    ' NewRow to create a DataRow.
    Dim row As DataRow 
    row = table.NewRow()

    ' Then add the new row to the collection.
    row("fName") = "John"
    row("lName") = "Smith"
    table.Rows.Add(row)
    
    Dim column As DataColumn
    For Each column in table.Columns
       Console.WriteLine(column.ColumnName)
    Next
    DataGrid1.DataSource=table
 End Sub
 
 Private Function MakeNamesTable() As DataTable
    ' Create a new DataTable titled 'Names.'
    Dim namesTable As New DataTable("Names") 

    ' Add three column objects to the table.
    Dim idColumn As New DataColumn()
    idColumn.DataType = System.Type.GetType("System.Int32")
    idColumn.ColumnName = "id"
    idColumn.AutoIncrement = True
    namesTable.Columns.Add(idColumn)

    Dim fNameColumn As New DataColumn()
    fNameColumn.DataType = System.Type.GetType("System.String")
    fNameColumn.ColumnName = "Fname"
    fNameColumn.DefaultValue = "Fname"
    namesTable.Columns.Add(fNameColumn)

    Dim lNameColumn As New DataColumn()
    lNameColumn.DataType = System.Type.GetType("System.String")
    lNameColumn.ColumnName = "LName"
    namesTable.Columns.Add(lNameColumn)

    ' Create an array for DataColumn objects.
    Dim keys(0) As DataColumn 
    keys(0) = idColumn
    namesTable.PrimaryKey = keys

    ' Return the new DataTable.
    MakeNamesTable = namesTable
 End Function

注釈

DataRowオブジェクトと DataColumn オブジェクトは、 の主要なコンポーネントですDataTable。 オブジェクトとそのプロパティとメソッドを DataRow 使用して、 を取得および評価し、 の値を挿入、削除、更新します DataTable。 は DataRowCollection 内の実際 DataRow のオブジェクトを DataTable表し、 DataColumnCollection には のスキーマを DataColumn 記述するオブジェクトが DataTable含まれています。 オーバーロードされた Item[] プロパティを使用して、 の DataColumn値を取得または設定します。

プロパティと プロパティをHasVersion使用して、特定の行値の状態を確認し、 プロパティをRowState使用して、親 DataTableに対する行の状態を確認IsNullします。

DataRowしい を作成するには、 オブジェクトの NewRow メソッドを DataTable 使用します。 新 DataRowしい を作成した後、 メソッドを Add 使用して、 に新しい DataRow を追加します DataRowCollection。 最後に、 オブジェクトの メソッドをAcceptChangesDataTable呼び出して、追加を確認します。 にデータを追加する方法の詳細については、「DataTable へのDataTableデータの追加」を参照してください。

から をDataRow削除する場合は、 の メソッドDataRowCollectionRemove呼び出すか、 オブジェクトの メソッドをDeleteDataRow呼び出DataRowCollectionします。 メソッドは Remove 、コレクションから行を削除します。 これに対し、 Delete は削除対象としてマークします DataRow 。 実際の削除は、メソッドを呼び出 AcceptChanges すときに発生します。 を呼び出Deleteすことで、実際に削除する前に、削除対象としてマークされている行をプログラムでチェックできます。 詳細については、「 DataRow の削除」を参照してください。

コンストラクター

DataRow(DataRowBuilder)

指定したビルダーを使用して、DataRow クラスの新しいインスタンスを初期化します。 内部でのみ使用されます。

プロパティ

HasErrors

行にエラーがあるかどうかを示す値を取得します。

Item[DataColumn, DataRowVersion]

指定した DataColumn に格納されているデータの指定したバージョンを取得します。

Item[DataColumn]

指定した DataColumn に格納されているデータを取得または設定します。

Item[Int32, DataRowVersion]

列に格納されている、取得するデータのインデックスとバージョンで指定したデータを取得します。

Item[Int32]

インデックスで指定した列に格納されているデータを取得または設定します。

Item[String, DataRowVersion]

指定した列に格納されているデータの指定したバージョンを取得します。

Item[String]

名前で指定した列に格納されているデータを取得または設定します。

ItemArray

配列を使用してこの行のすべての値を取得または設定します。

RowError

行のカスタム エラー説明を取得または設定します。

RowState

DataRowCollection とのリレーションシップに関する、行の現在の状態を取得します。

Table

この行のスキーマが関連する DataTable を取得します。

メソッド

AcceptChanges()

前回 AcceptChanges() を呼び出した以降にこの行に対して行われたすべての変更をコミットします。

BeginEdit()

DataRow オブジェクトの編集操作を開始します。

CancelEdit()

この行の現在の編集をキャンセルします。

ClearErrors()

行のエラーを消去します。 これには RowError と、SetColumnError(Int32, String) に設定されているエラーが含まれます。

Delete()

DataRow を削除します。

EndEdit()

この行で行われている編集を終了します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetChildRows(DataRelation)

指定した DataRow を使用して、この DataRelation の子行を取得します。

GetChildRows(DataRelation, DataRowVersion)

指定した DataRowDataRelation を使用して、DataRowVersion の子行を取得します。

GetChildRows(String)

DataRow の指定した RelationName を使用して、DataRelation の子行を取得します。

GetChildRows(String, DataRowVersion)

DataRow の指定した RelationNameDataRelation を使用して、DataRowVersion の子行を取得します。

GetColumnError(DataColumn)

指定した DataColumn のエラーの説明を取得します。

GetColumnError(Int32)

インデックスで指定した列のエラーの説明を取得します。

GetColumnError(String)

名前で指定した列のエラーの説明を取得します。

GetColumnsInError()

エラーが含まれる列の配列を取得します。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetParentRow(DataRelation)

指定した DataRow を使用して、DataRelation の親行を取得します。

GetParentRow(DataRelation, DataRowVersion)

指定した DataRowDataRelation を使用して、DataRowVersion の親行を取得します。

GetParentRow(String)

DataRow の指定した RelationName を使用して、DataRelation の親行を取得します。

GetParentRow(String, DataRowVersion)

DataRow の指定した RelationNameDataRelation を使用して、DataRowVersion の親行を取得します。

GetParentRows(DataRelation)

指定した DataRow を使用して、DataRelation の親行を取得します。

GetParentRows(DataRelation, DataRowVersion)

指定した DataRowDataRelation を使用して、DataRowVersion の親行を取得します。

GetParentRows(String)

DataRow の指定した RelationName を使用して、DataRelation の親行を取得します。

GetParentRows(String, DataRowVersion)

DataRow の指定した RelationNameDataRelation を使用して、DataRowVersion の親行を取得します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
HasVersion(DataRowVersion)

指定したバージョンが存在するかどうかを示す値を取得します。

IsNull(DataColumn)

指定した DataColumn に null 値が格納されているかどうかを示す値を取得します。

IsNull(DataColumn, DataRowVersion)

指定した DataColumnDataRowVersion に null 値が格納されているかどうかを示す値を取得します。

IsNull(Int32)

指定したインデックス位置にある列に null 値が格納されているかどうかを示す値を取得します。

IsNull(String)

指定した列に null 値が格納されているかどうかを示す値を取得します。

MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
RejectChanges()

前回 AcceptChanges() を呼び出した以降にこの行に対して行われたすべての変更を拒否します。

SetAdded()

RowStateDataRowAdded に変更します。

SetColumnError(DataColumn, String)

DataColumn として指定した列のエラーの説明を設定します。

SetColumnError(Int32, String)

インデックスで指定した列のエラーの説明を設定します。

SetColumnError(String, String)

名前で指定した列のエラーの説明を設定します。

SetModified()

RowStateDataRowModified に変更します。

SetNull(DataColumn)

指定した DataColumn の値を null 値に設定します。

SetParentRow(DataRow)

指定した新しい親 DataRow を使用して、DataRow の親行を設定します。

SetParentRow(DataRow, DataRelation)

指定した新しい親 DataRowDataRow を使用して、DataRelation の親行を設定します。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

拡張メソッド

Field<T>(DataRow, DataColumn)

指定された行の個々の列値に対し、型を厳密に指定してアクセスできます。 Field<T>(DataRow, DataColumn) メソッドは Null 許容型もサポートします。

Field<T>(DataRow, DataColumn, DataRowVersion)

指定された行の個々の列値に対し、型を厳密に指定してアクセスできます。 Field<T>(DataRow, DataColumn, DataRowVersion) メソッドは Null 許容型もサポートします。

Field<T>(DataRow, Int32)

指定された行の個々の列値に対し、型を厳密に指定してアクセスできます。 Field<T>(DataRow, Int32) メソッドは Null 許容型もサポートします。

Field<T>(DataRow, Int32, DataRowVersion)

指定された行の個々の列値に対し、型を厳密に指定してアクセスできます。 Field<T>(DataRow, Int32, DataRowVersion) メソッドは Null 許容型もサポートします。

Field<T>(DataRow, String)

指定された行の個々の列値に対し、型を厳密に指定してアクセスできます。 Field<T>(DataRow, String) メソッドは Null 許容型もサポートします。

Field<T>(DataRow, String, DataRowVersion)

指定された行の個々の列値に対し、型を厳密に指定してアクセスできます。 Field<T>(DataRow, String, DataRowVersion) メソッドは Null 許容型もサポートします。

SetField<T>(DataRow, DataColumn, T)

DataRow 内の指定された列に新しい値を設定します。 SetField<T>(DataRow, DataColumn, T) メソッドは Null 許容型もサポートします。

SetField<T>(DataRow, Int32, T)

メソッドを呼び出した DataRow 内の指定された列に新しい値を設定します。 SetField<T>(DataRow, Int32, T) メソッドは Null 許容型もサポートします。

SetField<T>(DataRow, String, T)

DataRow 内の指定された列に新しい値を設定します。 SetField<T>(DataRow, String, T) メソッドは Null 許容型もサポートします。

適用対象

スレッド セーフ

この型は、マルチスレッド読み取り操作に安全です。 書き込み操作は同期する必要があります。

こちらもご覧ください