DataRow.Item[] Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee worden gegevens opgehaald of ingesteld die zijn opgeslagen in een opgegeven kolom.
Overloads
| Name | Description |
|---|---|
| Item[DataColumn] |
Hiermee worden de gegevens opgehaald of ingesteld die zijn opgeslagen in de opgegeven DataColumn. |
| Item[Int32] |
Hiermee worden de gegevens opgehaald of ingesteld die zijn opgeslagen in de kolom die is opgegeven door de index. |
| Item[String] |
Hiermee worden de gegevens opgehaald of ingesteld die zijn opgeslagen in de kolom die op naam is opgegeven. |
| Item[DataColumn, DataRowVersion] |
Hiermee wordt de opgegeven versie van gegevens opgehaald die zijn opgeslagen in de opgegeven DataColumn. |
| Item[Int32, DataRowVersion] |
Haalt de gegevens op die zijn opgeslagen in de kolom, opgegeven door index en versie van de gegevens die moeten worden opgehaald. |
| Item[String, DataRowVersion] |
Hiermee haalt u de opgegeven versie van gegevens op die zijn opgeslagen in de benoemde kolom. |
Item[DataColumn]
Hiermee worden de gegevens opgehaald of ingesteld die zijn opgeslagen in de opgegeven 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
Parameters
- column
- DataColumn
Een DataColumn die de gegevens bevat.
Waarde van eigenschap
Een Object die de gegevens bevat.
Uitzonderingen
De kolom behoort niet tot deze tabel.
De column waarde is null.
Er is een poging gedaan om een waarde in te stellen voor een verwijderde rij.
De gegevenstypen van de waarde en de kolom komen niet overeen.
Voorbeelden
In de volgende voorbeelden ziet u hoe de Item[] eigenschap wordt gebruikt om de waarde van een specifieke kolomindex op te halen en in te stellen. In het eerste voorbeeld wordt de waarde opgehaald van de eerste kolom in een rij waarop een gebruiker in een DataGrid besturingselement klikt. De tweede stelt een waarde in die als argument wordt doorgegeven aan de methode.
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
Opmerkingen
Wanneer u de eigenschap instelt, wordt er een uitzondering gegenereerd als er een uitzondering optreedt in de ColumnChanging gebeurtenis.
Als dit een onmiddellijke bewerking is, raadpleegt EndEdit u de uitzonderingen die kunnen worden gegenereerd.
Van toepassing op
Item[Int32]
Hiermee worden de gegevens opgehaald of ingesteld die zijn opgeslagen in de kolom die is opgegeven door de index.
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
Parameters
- columnIndex
- Int32
De op nul gebaseerde index van de kolom.
Waarde van eigenschap
Een Object die de gegevens bevat.
Uitzonderingen
Treedt op wanneer u probeert een waarde in te stellen voor een verwijderde rij.
Het columnIndex argument valt buiten het bereik.
Voorbeelden
In de volgende voorbeelden ziet u hoe de Item[] eigenschap wordt gebruikt om de waarde van een specifieke kolomindex op te halen en in te stellen. In het eerste voorbeeld wordt de waarde opgehaald van de eerste kolom in een rij waarop een gebruiker in een DataGrid besturingselement klikt.
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
Opmerkingen
Wanneer u de eigenschap instelt, wordt er een uitzondering gegenereerd als er een uitzondering optreedt in de ColumnChanging gebeurtenis.
Als dit een bewerking is, raadpleegt EndEdit u de uitzonderingen die kunnen worden gegenereerd.
Van toepassing op
Item[String]
Hiermee worden de gegevens opgehaald of ingesteld die zijn opgeslagen in de kolom die op naam is opgegeven.
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
Parameters
- columnName
- String
De naam van de kolom.
Waarde van eigenschap
Een Object die de gegevens bevat.
Uitzonderingen
De kolom die is opgegeven door columnName kan niet worden gevonden.
Treedt op wanneer u probeert een waarde in te stellen voor een verwijderde rij.
Treedt op wanneer u een null-waarde probeert in te voegen in een kolom waarop AllowDBNull deze is ingesteld false.
Voorbeelden
In de volgende voorbeelden ziet u hoe de Item[] eigenschap wordt gebruikt om de waarde van een specifieke kolomindex op te halen en in te stellen. In het eerste voorbeeld wordt de waarde opgehaald van de eerste kolom in een rij waarop een gebruiker in een DataGrid besturingselement klikt. De tweede stelt een waarde in die als argument wordt doorgegeven aan de methode.
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
Opmerkingen
Wanneer u de eigenschap instelt, wordt er een uitzondering gegenereerd als er een uitzondering optreedt in de ColumnChanging gebeurtenis.
Als dit een onmiddellijke bewerking is, raadpleegt EndEdit u de uitzonderingen die kunnen worden gegenereerd.
Van toepassing op
Item[DataColumn, DataRowVersion]
Hiermee wordt de opgegeven versie van gegevens opgehaald die zijn opgeslagen in de opgegeven 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
Parameters
- column
- DataColumn
Een DataColumn met informatie over de kolom.
- version
- DataRowVersion
Een van de DataRowVersion waarden die de gewenste rijversie specificeert. Mogelijke waarden zijnDefault, Original, en CurrentProposed.
Waarde van eigenschap
Een Object die de gegevens bevat.
Uitzonderingen
De kolom behoort niet tot de tabel.
Het column argument bevat null.
De rij heeft deze versie van gegevens niet.
Voorbeelden
In het volgende voorbeeld wordt de huidige waarde van een klikcel in het DataGrid besturingselement opgehaald.
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
Opmerkingen
De version eigenschap mag niet worden verward RowState . Het version argument beschrijft de status van de gegevens die zijn opgenomen in de kolom ten opzichte van de oorspronkelijke waarde van de kolom.
Wanneer u de eigenschap instelt, wordt er een uitzondering gegenereerd als er een uitzondering optreedt in de ColumnChanging gebeurtenis.
Als dit een onmiddellijke bewerking is, raadpleegt EndEdit u de uitzonderingen die kunnen worden gegenereerd.
Zie ook
Van toepassing op
Item[Int32, DataRowVersion]
Haalt de gegevens op die zijn opgeslagen in de kolom, opgegeven door index en versie van de gegevens die moeten worden opgehaald.
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
Parameters
- columnIndex
- Int32
De op nul gebaseerde index van de kolom.
- version
- DataRowVersion
Een van de DataRowVersion waarden die de gewenste rijversie specificeert. Mogelijke waarden zijnDefault, Original, en CurrentProposed.
Waarde van eigenschap
Een Object die de gegevens bevat.
Uitzonderingen
Het columnIndex argument valt buiten het bereik.
De gegevenstypen van de waarde en de kolom komen niet overeen.
De rij heeft deze versie van gegevens niet.
Er is een poging gedaan om een waarde in te stellen voor een verwijderde rij.
Voorbeelden
In het volgende voorbeeld wordt de huidige waarde van een kolom opgehaald via de Item[] eigenschap van het DataRow object.
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
Opmerkingen
U kunt alleen een rij maken of bijwerken nadat u de BeginEdit methode hebt aangeroepen. Op dezelfde manier moet de EndEdit methode worden aangeroepen om de bewerking door te voeren. Nadat u de EndEdit methode hebt aangeroepen en voordat u de AcceptChanges methode aanroept, worden interne representaties van de oorspronkelijke en nieuwe voorgestelde waarden opgeslagen. Daarom kunt u, totdat u het AcceptChangesaanroept, het version argument gebruiken om op te geven welke versie van de waarde van een kolom u nodig hebt, ofwel de DataRowVersion.Original of DataRowVersion.Proposed. Zodra u de AcceptChanges methode aanroept, wordt de versie van de kolom echter teruggezet naar DataRowVersion.Original. Als de rij nieuw is, kunt u de parameter ook doorgeven DataRowVersion.Default om de standaardwaarde van de kolom op te halen. Bij het doorgeven retourneert DataRowVersion.Currentde eigenschap de huidige waarde, ongeacht de versie ervan.
Note
De BeginEdit methode wordt impliciet aangeroepen wanneer u de waarde van een gegevensgebonden besturingselement wijzigt of wanneer een DataRow object wordt toegevoegd aan de DataRowCollectionmethode; de EndEdit methode wordt impliciet aangeroepen wanneer u de volgende methoden aanroept: de AcceptChanges methode van het DataRow object, de AcceptChanges methode van het DataTable object of de CancelEdit methode.
De opsomming retourneert Current daarentegen DataRowVersion de versie van de gegevens nadat de EndEdit methode is aangeroepen.
Het version argument mag niet worden verward met de RowState eigenschap. Het version argument beschrijft de status van de gegevens die zijn opgenomen in de kolom ten opzichte van de oorspronkelijke waarde van de kolom. De RowState eigenschap beschrijft de status van de hele rij ten opzichte van de bovenliggende DataTablerij.
Wanneer u de eigenschap instelt, wordt er een uitzondering gegenereerd als er een uitzondering optreedt in de ColumnChanging gebeurtenis.
Als dit een onmiddellijke bewerking is, raadpleegt EndEdit u de uitzonderingen die kunnen worden gegenereerd.
Van toepassing op
Item[String, DataRowVersion]
Hiermee haalt u de opgegeven versie van gegevens op die zijn opgeslagen in de benoemde kolom.
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
Parameters
- columnName
- String
De naam van de kolom.
- version
- DataRowVersion
Een van de DataRowVersion waarden die de gewenste rijversie specificeert. Mogelijke waarden zijnDefault, Original, en CurrentProposed.
Waarde van eigenschap
Een Object die de gegevens bevat.
Uitzonderingen
De kolom die is opgegeven door columnName kan niet worden gevonden.
De gegevenstypen van de waarde en de kolom komen niet overeen.
De rij heeft deze versie van gegevens niet.
De rij is verwijderd.
Voorbeelden
In het volgende voorbeeld wordt de huidige versie van gegevens opgehaald op een cel waarop een DataGrid besturingselement is geklikt.
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
Opmerkingen
De versie moet niet worden verward met de RowState eigenschap. Het version argument beschrijft de status van de gegevens die zijn opgenomen in de kolom ten opzichte van de oorspronkelijke waarde van de kolom. De RowState eigenschap beschrijft de status van de hele rij ten opzichte van de bovenliggende DataTablerij.
Wanneer u de eigenschap instelt, wordt er een uitzondering gegenereerd als er een uitzondering optreedt in de ColumnChanging gebeurtenis.
Als dit een onmiddellijke bewerking is, raadpleegt EndEdit u de uitzonderingen die kunnen worden gegenereerd.