DataRow.Item[] Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Daten aus einer angegebenen Spalte ab oder legt diese fest.
Überlädt
Item[DataColumn] |
Ruft die in der angegebenen DataColumn gespeicherten Daten ab oder legt diese fest. |
Item[Int32] |
Ruft die Daten aus der durch den Index angegebenen Spalte ab oder legt diese fest. |
Item[String] |
Ruft die Daten aus der durch den Namen angegebenen Spalte ab oder legt diese fest. |
Item[DataColumn, DataRowVersion] |
Ruft die angegebene Version der Daten aus der angegebenen DataColumn ab. |
Item[Int32, DataRowVersion] |
Ruft die durch den Index und die Version angegebenen Daten aus der Spalte ab. |
Item[String, DataRowVersion] |
Ruft die angegebene Version der Daten aus der benannten Spalte ab. |
Item[DataColumn]
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
Ruft die in der angegebenen DataColumn gespeicherten Daten ab oder legt diese fest.
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
Parameter
- column
- DataColumn
Ein DataColumn, der die Daten enthält.
Eigenschaftswert
Eine Instanz von Object, die die Daten enthält.
Ausnahmen
Die Spalte gehört nicht zu dieser Tabelle.
Die column
ist NULL.
Es wurde versucht, einen Wert für eine gelöschte Zeile festzulegen.
Der Datentyp des Werts und der Datentyp der Spalte stimmen nicht überein.
Beispiele
Die folgenden Beispiele veranschaulichen die Verwendung der Item[] -Eigenschaft zum Abrufen und Festlegen des Werts eines bestimmten Spaltenindexes. Im ersten Beispiel wird der Wert der ersten Spalte in einer Zeile abgerufen, auf die ein Benutzer in einem DataGrid Steuerelement klickt. Die zweite legt einen Wert fest, der als Argument an die -Methode übergeben wird.
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
Hinweise
Wenn Sie die -Eigenschaft festlegen, wird eine Ausnahme generiert, wenn im ColumnChanging -Ereignis eine Ausnahme auftritt.
Wenn es sich um eine sofortige Bearbeitung handelt, finden Sie informationen EndEdit zu den Ausnahmen, die generiert werden können.
Gilt für:
Item[Int32]
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
Ruft die Daten aus der durch den Index angegebenen Spalte ab oder legt diese fest.
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
Parameter
- columnIndex
- Int32
Der nullbasierte Index der Spalte.
Eigenschaftswert
Eine Instanz von Object, die die Daten enthält.
Ausnahmen
Wird ausgelöst, wenn Sie versuchen, einen Wert in einer gelöschten Zeile festzulegen.
Das columnIndex
-Argument liegt außerhalb des gültigen Bereichs.
Wird ausgelöst, wenn Sie einen Wert festlegen und der Type des neuen Werts nicht mit dem DataType übereinstimmt.
Beispiele
Die folgenden Beispiele veranschaulichen die Verwendung der Item[] -Eigenschaft zum Abrufen und Festlegen des Werts eines bestimmten Spaltenindexes. Im ersten Beispiel wird der Wert der ersten Spalte in einer Zeile abgerufen, auf die ein Benutzer in einem DataGrid Steuerelement klickt.
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
Hinweise
Wenn Sie die -Eigenschaft festlegen, wird eine Ausnahme generiert, wenn im ColumnChanging -Ereignis eine Ausnahme auftritt.
Wenn es sich um eine Bearbeitung handelt, finden Sie informationen EndEdit zu den Ausnahmen, die generiert werden können.
Gilt für:
Item[String]
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
Ruft die Daten aus der durch den Namen angegebenen Spalte ab oder legt diese fest.
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
Parameter
- columnName
- String
Der Name der Spalte.
Eigenschaftswert
Eine Instanz von Object, die die Daten enthält.
Ausnahmen
Die durch columnName
angegebene Spalte kann nicht gefunden werden.
Wird ausgelöst, wenn Sie versuchen, einen Wert in einer gelöschten Zeile festzulegen.
Tritt auf, wenn Sie versuchen, einen NULL-Wert in eine Spalte einzufügen, in der AllowDBNull zu false
festgelegt ist.
Beispiele
Die folgenden Beispiele veranschaulichen die Verwendung der Item[] -Eigenschaft zum Abrufen und Festlegen des Werts eines bestimmten Spaltenindexes. Im ersten Beispiel wird der Wert der ersten Spalte in einer Zeile abgerufen, auf die ein Benutzer in einem DataGrid Steuerelement klickt. Die zweite legt einen Wert fest, der als Argument an die -Methode übergeben wird.
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
Hinweise
Wenn Sie die -Eigenschaft festlegen, wird eine Ausnahme generiert, wenn im ColumnChanging -Ereignis eine Ausnahme auftritt.
Wenn es sich um eine sofortige Bearbeitung handelt, finden Sie informationen EndEdit zu den Ausnahmen, die generiert werden können.
Gilt für:
Item[DataColumn, DataRowVersion]
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
Ruft die angegebene Version der Daten aus der angegebenen DataColumn ab.
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
Parameter
- column
- DataColumn
Eine DataColumn, die Informationen über die Spalte enthält.
- version
- DataRowVersion
Einer der DataRowVersion-Werte, der die gewünschte Zeilenversion angibt. Mögliche Werte sind Default
, Original
, Current
und Proposed
.
Eigenschaftswert
Eine Instanz von Object, die die Daten enthält.
Ausnahmen
Die Spalte gehört nicht zu der Tabelle.
Das column
-Argument ist NULL.
In der Zeile ist diese Version der Daten nicht enthalten.
Beispiele
Im folgenden Beispiel wird der aktuelle Wert einer geklickten Zelle im DataGrid Steuerelement abgerufen.
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
Hinweise
Sollte version
nicht mit der RowState -Eigenschaft verwechselt werden. Das version
Argument beschreibt den Zustand der Daten, die in der Spalte enthalten sind, relativ zum ursprünglichen Wert der Spalte.
Wenn Sie die -Eigenschaft festlegen, wird eine Ausnahme generiert, wenn im ColumnChanging -Ereignis eine Ausnahme auftritt.
Wenn es sich um eine sofortige Bearbeitung handelt, finden Sie informationen EndEdit zu den Ausnahmen, die generiert werden können.
Weitere Informationen
Gilt für:
Item[Int32, DataRowVersion]
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
Ruft die durch den Index und die Version angegebenen Daten aus der Spalte ab.
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
Parameter
- columnIndex
- Int32
Der nullbasierte Index der Spalte.
- version
- DataRowVersion
Einer der DataRowVersion-Werte, der die gewünschte Zeilenversion angibt. Mögliche Werte sind Default
, Original
, Current
und Proposed
.
Eigenschaftswert
Eine Instanz von Object, die die Daten enthält.
Ausnahmen
Das columnIndex
-Argument liegt außerhalb des gültigen Bereichs.
Der Datentyp des Werts und der Datentyp der Spalte stimmen nicht überein.
In der Zeile ist diese Version der Daten nicht enthalten.
Es wurde versucht, einen Wert für eine gelöschte Zeile festzulegen.
Beispiele
Im folgenden Beispiel wird der aktuelle Wert einer Spalte über die Item[] -Eigenschaft des DataRow -Objekts abgerufen.
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
Hinweise
Sie können eine Zeile nur erstellen oder aktualisieren, nachdem Sie die BeginEdit -Methode aufgerufen haben. Analog dazu muss die EndEdit -Methode aufgerufen werden, um die Bearbeitung zu committen. Nachdem Sie die EndEdit -Methode aufgerufen haben und bevor Sie die AcceptChanges -Methode aufrufen, werden interne Darstellungen der ursprünglichen und neuen vorgeschlagenen Werte gespeichert. Daher können Sie bis zum Aufrufen von AcceptChangesmit dem version
Argument angeben, welche Version des Werts einer Spalte Sie benötigen, entweder oder DataRowVersion.Original
DataRowVersion.Proposed
. Sobald Sie jedoch die AcceptChanges -Methode aufrufen, wird die Version der Spalte auf DataRowVersion.Original
zurückgesetzt. Wenn die Zeile neu ist, können Sie auch für den Parameter übergeben DataRowVersion.Default
, um den Standardwert der Spalte abzurufen. Beim Übergeben DataRowVersion.Current
gibt die -Eigenschaft den aktuellen Wert zurück, unabhängig davon, welche Version es sein mag.
Hinweis
Die BeginEdit -Methode wird implizit aufgerufen, wenn Sie den Wert eines datengebundenen Steuerelements ändern oder wenn ein DataRow Objekt dem DataRowCollectionhinzugefügt wird. Die EndEdit -Methode wird implizit aufgerufen, wenn Sie die folgenden Methoden aufrufen: die AcceptChanges -Methode des DataRow -Objekts, die AcceptChanges -Methode des DataTable -Objekts oder die CancelEdit -Methode.
Im Gegensatz dazu gibt die DataRowVersion -Enumeration Current
die Version der Daten zurück, nachdem die EndEdit -Methode aufgerufen wurde.
Das version
Argument sollte nicht mit der RowState -Eigenschaft verwechselt werden. Das version
Argument beschreibt den Zustand der Daten, die in der Spalte enthalten sind, relativ zum ursprünglichen Wert der Spalte. Die RowState -Eigenschaft beschreibt den Zustand der gesamten Zeile relativ zu ihrer übergeordneten DataTable.
Wenn Sie die -Eigenschaft festlegen, wird eine Ausnahme generiert, wenn im ColumnChanging -Ereignis eine Ausnahme auftritt.
Wenn es sich um eine sofortige Bearbeitung handelt, finden Sie informationen EndEdit zu den Ausnahmen, die generiert werden können.
Gilt für:
Item[String, DataRowVersion]
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
- Quelle:
- DataRow.cs
Ruft die angegebene Version der Daten aus der benannten Spalte ab.
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
Parameter
- columnName
- String
Der Name der Spalte.
- version
- DataRowVersion
Einer der DataRowVersion-Werte, der die gewünschte Zeilenversion angibt. Mögliche Werte sind Default
, Original
, Current
und Proposed
.
Eigenschaftswert
Eine Instanz von Object, die die Daten enthält.
Ausnahmen
Die durch columnName
angegebene Spalte kann nicht gefunden werden.
Der Datentyp des Werts und der Datentyp der Spalte stimmen nicht überein.
In der Zeile ist diese Version der Daten nicht enthalten.
Die Zeile wurde gelöscht.
Beispiele
Im folgenden Beispiel wird die aktuelle Version der Daten in einer geklickten Zelle eines DataGrid Steuerelements abgerufen.
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
Hinweise
Die Version sollte nicht mit der RowState -Eigenschaft verwechselt werden. Das version
Argument beschreibt den Zustand der Daten, die in der Spalte enthalten sind, relativ zum ursprünglichen Wert der Spalte. Die RowState -Eigenschaft beschreibt den Zustand der gesamten Zeile relativ zu ihrer übergeordneten DataTable.
Wenn Sie die -Eigenschaft festlegen, wird eine Ausnahme generiert, wenn im ColumnChanging -Ereignis eine Ausnahme auftritt.
Wenn es sich um eine sofortige Bearbeitung handelt, finden Sie informationen EndEdit zu den Ausnahmen, die generiert werden können.