次の方法で共有


DataRow.Item プロパティ (DataColumn)

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

[C#] C# では、このプロパティは DataRow クラスのインデクサになります。

Overloads Public Default Property Item( _
   ByVal column As DataColumn _) As Object
[C#]
public object this[DataColumncolumn] {get; set;}
[C++]
public: __property Object* get_Item(DataColumn* column);public: __property void set_Item(DataColumn* column,   Object*);
[JScript]
returnValue = DataRowObject.Item(column);DataRowObject.Item(column) = returnValue;またはreturnValue = DataRowObject(column);DataRowObject(column) = returnValue;

[JScript] JScript では、この型で定義されている既定のインデックス プロパティを使用することができます。しかし、独自のインデックス プロパティを明示的に定義することはできません。ただし、このクラスの expando 属性を指定すると、既定のインデックス プロパティが提供されます。提供されるインデックス プロパティの型は Object 型であり、インデックス型は String になります。

引数 [JScript]

  • column
    データが格納されている DataColumn

パラメータ [Visual Basic, C#, C++]

  • column
    データが格納されている DataColumn

プロパティ値

データを格納している Object

例外

例外の種類 条件
ArgumentException 列がこのテーブルに属していません。
ArgumentNullException column が null です。
DeletedRowInaccessibleException 削除した行に値を設定しようとしました。
InvalidCastException 列と値のデータ型が一致しません。

解説

プロパティを設定するときに、 ColumnChanging イベントで例外が発生すると例外が生成されます。

直前の編集の場合、生成される可能性がある例外については EndEdit のトピックを参照してください。

使用例

[Visual Basic] Item プロパティを使用して、指定した列インデックスの値を取得および設定する例を次に示します。最初の例では、ユーザーが DataGrid コントロールでクリックする行にある最初の列の値を取得します。2 番目の例は、引数としてメソッドに渡される値を設定します。

 
Private Sub DataGrid1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
   Dim currRow As DataRow
   Dim dataGridTable As DataTable
   dataGridTable = CType(DataGrid1.DataSource, DataTable)
   ' Set the current row using the RowNumber property of the CurrentCell.
   currRow = dataGridTable.Rows(DataGrid1.CurrentCell.RowNumber)
   Dim myCol As DataColumn
   myCol = dataGridTable.Columns(1)
   ' Get the value of the column 1 in the DataTable.
   label1.Text = currRow(myCol).ToString()
End Sub

Private Sub SetDataRowValue(ByVal myGrid As DataGrid, ByVal newVal As Object)
   ' Set the value of a column in the last row of a DataGrid.
   Dim t As DataTable
   t = CType(myGrid.DataSource, DataTable)
   Dim myRow As DataRow
   myRow = t.Rows(t.Rows.Count - 1)
   Dim myCol As DataColumn
   myCol = t.Columns("FirstName")
   myRow(myCol)= newVal
End Sub

[C#, C++, JScript] C#、C++、および JScript のサンプルはありません。Visual Basic のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

DataRow クラス | DataRow メンバ | System.Data 名前空間 | DataRow.Item オーバーロードの一覧