DataRow.Item[] プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定した列に格納されているデータを取得または設定します。
オーバーロード
Item[DataColumn] |
指定した DataColumn に格納されているデータを取得または設定します。 |
Item[Int32] |
インデックスで指定した列に格納されているデータを取得または設定します。 |
Item[String] |
名前で指定した列に格納されているデータを取得または設定します。 |
Item[DataColumn, DataRowVersion] |
指定した DataColumn に格納されているデータの指定したバージョンを取得します。 |
Item[Int32, DataRowVersion] |
列に格納されている、取得するデータのインデックスとバージョンで指定したデータを取得します。 |
Item[String, DataRowVersion] |
指定した列に格納されているデータの指定したバージョンを取得します。 |
Item[DataColumn]
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
指定した DataColumn に格納されているデータを取得または設定します。
public:
property System::Object ^ default[System::Data::DataColumn ^] { System::Object ^ get(System::Data::DataColumn ^ column); void set(System::Data::DataColumn ^ column, System::Object ^ value); };
public object this[System.Data.DataColumn column] { get; set; }
member this.Item(System.Data.DataColumn) : obj with get, set
Default Public Property Item(column As DataColumn) As Object
パラメーター
- column
- DataColumn
データが格納されている DataColumn。
プロパティ値
データを格納している Object。
例外
この列はこのテーブルに属していません。
column
が null です。
削除した行に値を設定しようとしました。
列と値のデータ型が一致しません。
例
次の例では、 プロパティを Item[] 使用して、特定の列インデックスの値を取得および設定します。 最初の例では、ユーザーがコントロール内でクリックした行の最初の列の値を DataGrid 取得します。 2 つ目は、 メソッドに引数として渡される値を設定します。
Private Sub DataGrid1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs)
Dim dataGridTable As DataTable = _
CType(DataGrid1.DataSource, DataTable)
' Set the current row using the RowNumber
' property of the CurrentCell.
Dim currentRow As DataRow = _
dataGridTable.Rows(DataGrid1.CurrentCell.RowNumber)
Dim column As DataColumn = dataGridTable.Columns(1)
' Get the value of the column 1 in the DataTable.
label1.Text = currentRow(column).ToString()
End Sub
Private Sub SetDataRowValue( _
ByVal grid As DataGrid, ByVal newVal As Object)
' Set the value of a column in the last row of a DataGrid.
Dim table As DataTable = CType(grid.DataSource, DataTable)
Dim row As DataRow = table.Rows(table.Rows.Count - 1)
Dim column As DataColumn = table.Columns("FirstName")
row(column)= newVal
End Sub
注釈
プロパティを設定すると、イベントで例外が発生した場合に例外が ColumnChanging 生成されます。
これがすぐに編集される場合は、生成できる例外を参照してください EndEdit 。
適用対象
Item[Int32]
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
インデックスで指定した列に格納されているデータを取得または設定します。
public:
property System::Object ^ default[int] { System::Object ^ get(int columnIndex); void set(int columnIndex, System::Object ^ value); };
public object this[int columnIndex] { get; set; }
member this.Item(int) : obj with get, set
Default Public Property Item(columnIndex As Integer) As Object
パラメーター
- columnIndex
- Int32
列の 0 から始まるインデックス番号。
プロパティ値
データを格納している Object。
例外
削除した行に値を設定しようとしたときに発生します。
引数 columnIndex
が範囲外です。
例
次の例では、 プロパティを Item[] 使用して、特定の列インデックスの値を取得および設定します。 最初の例では、ユーザーがコントロール内でクリックした行の最初の列の値を DataGrid 取得します。
private void DataGrid1_Click(object sender,
System.EventArgs e)
{
// Get the DataTable the grid is bound to.
DataGrid thisGrid = (DataGrid) sender;
DataTable table = (DataTable) thisGrid.DataSource;
DataRow currentRow =
table.Rows[thisGrid.CurrentCell.RowNumber];
// Get the value of the column 1 in the DataTable.
Console.WriteLine(currentRow[1]);
// You can also use the name of the column:
// Console.WriteLine(currentRow["FirstName"])
}
private void SetDataRowValue(DataGrid grid, object newValue)
{
// Set the value of the last column in the last row of a DataGrid.
DataTable table;
table = (DataTable) grid.DataSource;
DataRow row;
// Get last row
row = (DataRow)table.Rows[table.Rows.Count-1];
// Set value of last column
row[table.Columns.Count-1] = newValue;
}
Private Sub DataGrid1_Click _
(ByVal sender As System.Object, ByVal e As System.EventArgs)
' Get the DataTable the grid is bound to.
Dim thisGrid As DataGrid = CType(sender, DataGrid)
Dim table As DataTable = CType(thisGrid.DataSource, DataTable)
Dim currentRow As DataRow = _
table.Rows(thisGrid.CurrentCell.RowNumber)
' Get the value of the column 1 in the DataTable.
Console.WriteLine(currentRow(1))
' You can also use the name of the column:
' Console.WriteLine(currentRow("FirstName"))
End Sub
Private Sub SetDataRowValue( _
ByVal grid As DataGrid, ByVal newValue As Object)
' Set the value of the last column in the last row of a DataGrid.
Dim table As DataTable
table = CType(grid.DataSource, DataTable)
Dim row As DataRow
row = table.Rows(table.Rows.Count-1)
row(table.Columns.Count-1) = newValue
End Sub
注釈
プロパティを設定すると、イベントで例外が発生した場合に例外が ColumnChanging 生成されます。
これが編集の場合は、生成できる例外を参照してください EndEdit 。
適用対象
Item[String]
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
名前で指定した列に格納されているデータを取得または設定します。
public:
property System::Object ^ default[System::String ^] { System::Object ^ get(System::String ^ columnName); void set(System::String ^ columnName, System::Object ^ value); };
public object this[string columnName] { get; set; }
member this.Item(string) : obj with get, set
Default Public Property Item(columnName As String) As Object
パラメーター
- columnName
- String
列の名前。
プロパティ値
データを格納している Object。
例外
columnName
で指定した列が見つかりません。
削除した行に値を設定しようとしたときに発生します。
AllowDBNull が false
に設定されている列に Null 値を挿入したときに発生します。
例
次の例では、 プロパティを Item[] 使用して、特定の列インデックスの値を取得および設定します。 最初の例では、ユーザーがコントロール内でクリックした行の最初の列の値を DataGrid 取得します。 2 つ目は、 メソッドに引数として渡される値を設定します。
private void DataGrid1_Click(
object sender, System.EventArgs e)
{
// Get the DataTable the grid is bound to.
DataGrid thisGrid = (DataGrid) sender;
DataTable table = (DataTable) thisGrid.DataSource;
DataRow currentRow =
table.Rows[thisGrid.CurrentCell.RowNumber];
// Get the value of the column 1 in the DataTable.
Console.WriteLine(currentRow["FirstName"]);
// You can also use the index:
// Console.WriteLine(currentRow[1]);
}
private void SetDataRowValue(
DataGrid grid, object newValue)
{
// Set the value of the first column in
// the last row of a DataGrid.
DataTable table = (DataTable) grid.DataSource;
DataRow row = table.Rows[table.Rows.Count-1];
row["FirstName"] = newValue;
}
Private Sub DataGrid1_Click( _
sender As Object, e As System.EventArgs)
' Get the DataTable the grid is bound to.
Dim thisGrid As DataGrid = CType(sender, DataGrid)
Dim table As DataTable = _
CType(thisGrid.DataSource, DataTable)
Dim currentRow As DataRow = _
table.Rows(thisGrid.CurrentCell.RowNumber)
' Get the value of the column 1 in the DataTable.
Console.WriteLine(currentRow("FirstName"))
' You can also use the index:
' Console.WriteLine(currentRow(1).ToString())
End Sub
Private Sub SetDataRowValue( _
grid As DataGrid, newValue As Object)
' Set the value of the first column in
' the last row of a DataGrid.
Dim table As DataTable = _
CType(grid.DataSource, DataTable)
Dim row As DataRow
row = table.Rows((table.Rows.Count - 1))
row("FirstName") = newValue
End Sub
注釈
プロパティを設定すると、イベントで例外が発生した場合に例外が ColumnChanging 生成されます。
これがすぐに編集される場合は、生成できる例外を参照してください EndEdit 。
適用対象
Item[DataColumn, DataRowVersion]
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
指定した DataColumn に格納されているデータの指定したバージョンを取得します。
public:
property System::Object ^ default[System::Data::DataColumn ^, System::Data::DataRowVersion] { System::Object ^ get(System::Data::DataColumn ^ column, System::Data::DataRowVersion version); };
public object this[System.Data.DataColumn column, System.Data.DataRowVersion version] { get; }
member this.Item(System.Data.DataColumn * System.Data.DataRowVersion) : obj
Default Public ReadOnly Property Item(column As DataColumn, version As DataRowVersion) As Object
パラメーター
- column
- DataColumn
列に関する情報を格納する DataColumn。
- version
- DataRowVersion
行のバージョンを指定する DataRowVersion 値の 1 つ。 指定できる値は、Default
、Original
、Current
、および Proposed
です。
プロパティ値
データを格納している Object。
例外
行がこのテーブルに属していません。
引数 column
が null です。
このバージョンのデータが行にありません。
例
次の例では、コントロール内のクリックされたセルの現在の値を DataGrid 取得します。
private void DataGrid1_Click(object sender,
System.EventArgs e)
{
DataTable dataGridTable =
(DataTable)DataGrid1.DataSource;
// Set the current row using the RowNumber
// property of the CurrentCell.
DataRow currentRow = dataGridTable.Rows[DataGrid1.CurrentCell.RowNumber];
DataColumn column = dataGridTable.Columns[1];
// Get the value of the column 1 in the DataTable.
Console.WriteLine(currentRow[column, DataRowVersion.Current]);
}
Private Sub DataGrid1_Click _
(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim dataGridTable As DataTable = _
CType(DataGrid1.DataSource, DataTable)
' Set the current row using the RowNumber
' property of the CurrentCell.
Dim currentRow As DataRow = dataGridTable.Rows( _
DataGrid1.CurrentRowIndex)
Dim column As DataColumn = dataGridTable.Columns(1)
' Get the value of the column 1 in the DataTable.
label1.Text = currentRow(column, _
DataRowVersion.Current).ToString()
End Sub
注釈
を version
プロパティと RowState 混同しないでください。 引数は version
、列の元の値に対する相対的な列に含まれるデータの状態を表します。
プロパティを設定すると、イベントで例外が発生した場合に例外が ColumnChanging 生成されます。
これがすぐに編集される場合は、生成できる例外を参照してください EndEdit 。
こちらもご覧ください
適用対象
Item[Int32, DataRowVersion]
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
列に格納されている、取得するデータのインデックスとバージョンで指定したデータを取得します。
public:
property System::Object ^ default[int, System::Data::DataRowVersion] { System::Object ^ get(int columnIndex, System::Data::DataRowVersion version); };
public object this[int columnIndex, System.Data.DataRowVersion version] { get; }
member this.Item(int * System.Data.DataRowVersion) : obj
Default Public ReadOnly Property Item(columnIndex As Integer, version As DataRowVersion) As Object
パラメーター
- columnIndex
- Int32
列の 0 から始まるインデックス番号。
- version
- DataRowVersion
行のバージョンを指定する DataRowVersion 値の 1 つ。 指定できる値は、Default
、Original
、Current
、および Proposed
です。
プロパティ値
データを格納している Object。
例外
引数 columnIndex
が範囲外です。
列と値のデータ型が一致しません。
このバージョンのデータが行にありません。
削除した行に値を設定しようとしました。
例
次の例では、 オブジェクトの プロパティを使用して Item[] 列の現在の値を DataRow 取得します。
Private Sub DataGrid1_Click _
(ByVal sender As System.Object, ByVal e As System.EventArgs)
' Set the current row using the RowNumber property of the CurrentCell.
Dim currentRow As DataRow = CType(DataGrid1.DataSource, DataTable). _
Rows(DataGrid1.CurrentCell.RowNumber)
' Get the value of the column 1 in the DataTable.
label1.Text = currentRow(1, DataRowVersion.Current).ToString()
End Sub
注釈
メソッドを呼び出 BeginEdit した後にのみ行を作成または更新できます。同様に、編集を EndEdit コミットするには、 メソッドを呼び出す必要があります。 メソッドを EndEdit 呼び出した後、メソッドを呼び出す前に AcceptChanges 、元の値と新しい提案された値の内部表現が格納されます。 したがって、 を呼び出AcceptChangesすまで、 引数をversion
使用して、必要な列の値のバージョン (または DataRowVersion.Proposed
) をDataRowVersion.Original
指定できます。 ただし、 メソッドを呼び出 AcceptChanges すとすぐに、列のバージョンは に DataRowVersion.Original
戻ります。 行が新しい場合は、 パラメーターに を渡 DataRowVersion.Default
して列の既定値を取得することもできます。 を渡 DataRowVersion.Current
すと、 プロパティは、バージョンに関係なく、現在の値を返します。
注意
メソッドはBeginEdit、データ バインド コントロールの値を変更するとき、または オブジェクトが にEndEditDataRowCollection追加されたときにDataRow暗黙的に呼び出されます。メソッドは、オブジェクトの メソッドAcceptChanges、オブジェクトの DataRow メソッドDataTable、AcceptChangesまたは CancelEdit メソッドのメソッドを呼び出すときに暗黙的に呼び出されます。
これに対し、 列挙Current
はDataRowVersion、 メソッドが呼び出された後にデータのバージョンをEndEdit返します。
引数を version
プロパティと RowState 混同しないでください。 引数は version
、列の元の値に対する相対的な列に含まれるデータの状態を表します。 プロパティは RowState 、親 DataTableに対する行全体の状態を表します。
プロパティを設定すると、イベントで例外が発生した場合に例外が ColumnChanging 生成されます。
これがすぐに編集される場合は、生成できる例外を参照してください EndEdit 。
適用対象
Item[String, DataRowVersion]
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
- ソース:
- DataRow.cs
指定した列に格納されているデータの指定したバージョンを取得します。
public:
property System::Object ^ default[System::String ^, System::Data::DataRowVersion] { System::Object ^ get(System::String ^ columnName, System::Data::DataRowVersion version); };
public object this[string columnName, System.Data.DataRowVersion version] { get; }
member this.Item(string * System.Data.DataRowVersion) : obj
Default Public ReadOnly Property Item(columnName As String, version As DataRowVersion) As Object
パラメーター
- columnName
- String
列の名前。
- version
- DataRowVersion
行のバージョンを指定する DataRowVersion 値の 1 つ。 指定できる値は、Default
、Original
、Current
、および Proposed
です。
プロパティ値
データを格納している Object。
例外
columnName
で指定した列が見つかりません。
列と値のデータ型が一致しません。
このバージョンのデータが行にありません。
この行は削除されました。
例
次の例では、コントロールのクリックされたセルにある現在のバージョンのデータを DataGrid 取得します。
private void DataGrid1_Click(object sender, System.EventArgs e)
{
// Set the current row using the RowNumber
// property of the CurrentCell.
DataRow currentRow =
((DataTable)(DataGrid1.DataSource)).
Rows[DataGrid1.CurrentCell.RowNumber];
// Print the current value of the column named "FirstName."
Console.WriteLine(currentRow["FirstName",
DataRowVersion.Current]);
}
Private Sub DataGrid1_Click _
(ByVal sender As System.Object, ByVal e As System.EventArgs)
' Set the current row using the RowNumber property
' of the CurrentCell.
Dim currentRow As DataRow = _
CType(DataGrid1.DataSource, DataTable). _
Rows(DataGrid1.CurrentCell.RowNumber)
' Print the current value of the column named "FirstName."
Console.WriteLine(currentRow("FirstName", _
DataRowVersion.Current).ToString())
End Sub
注釈
バージョンを プロパティと RowState 混同しないでください。 引数は version
、列の元の値に対する相対的な列に含まれるデータの状態を表します。 プロパティは RowState 、親 DataTableに対する行全体の状態を表します。
プロパティを設定すると、イベントで例外が発生した場合に例外が ColumnChanging 生成されます。
これがすぐに編集される場合は、生成できる例外を参照してください EndEdit 。
こちらもご覧ください
適用対象
.NET