DataRow.Item[] Özellik

Tanım

Belirtilen sütunda depolanan verileri alır veya ayarlar.Gets or sets data stored in a specified column.

Aşırı Yüklemeler

Item[DataColumn]

Belirtilen ' de depolanan verileri alır veya ayarlar DataColumn .Gets or sets the data stored in the specified DataColumn.

Item[Int32]

Dizin tarafından belirtilen sütunda depolanan verileri alır veya ayarlar.Gets or sets the data stored in the column specified by index.

Item[String]

Ada göre belirtilen sütunda depolanan verileri alır veya ayarlar.Gets or sets the data stored in the column specified by name.

Item[DataColumn, DataRowVersion]

Belirtilen verilerin belirtilen sürümünü belirtilen şekilde alır DataColumn .Gets the specified version of data stored in the specified DataColumn.

Item[Int32, DataRowVersion]

Alınacak verilerin dizini ve sürümü ile belirtilen sütununda depolanan verileri alır.Gets the data stored in the column, specified by index and version of the data to retrieve.

Item[String, DataRowVersion]

Adlandırılmış sütunda depolanan verilerin belirtilen sürümünü alır.Gets the specified version of data stored in the named column.

Item[DataColumn]

Belirtilen ' de depolanan verileri alır veya ayarlar DataColumn .Gets or sets the data stored in the specified 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

Parametreler

column
DataColumn

DataColumnVerileri içeren bir.A DataColumn that contains the data.

Özellik Değeri

Object

ObjectVerileri içeren bir.An Object that contains the data.

Özel durumlar

Sütun bu tabloya ait değil.The column does not belong to this table.

columnNull.The column is null.

Silinen bir satırda değer ayarlamak için bir girişimde bulunuldu.An attempt was made to set a value on a deleted row.

Değerin ve sütunun veri türleri eşleşmiyor.The data types of the value and the column do not match.

Örnekler

Aşağıdaki örnekler, Item[] belirli bir sütun dizininin değerini almak ve ayarlamak için özelliğinin kullanımını gösterir.The following examples demonstrate the use of the Item[] property to get and set the value of a specific column index. İlk örnek, bir kullanıcının denetimde tıkladığı herhangi bir satırdaki ilk sütunun değerini alır DataGrid .The first example gets the value of the first column in any row that a user clicks in a DataGrid control. İkinci değer, metoduna bağımsız değişken olarak geçirilen bir değeri ayarlar.The second sets a value passed as an argument to the method.

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

Açıklamalar

Özelliği ayarladığınızda, olayda bir özel durum oluşursa bir özel durum oluşturulur ColumnChanging .When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Bu bir anında düzenleme ise, EndEdit oluşturulabilecek özel durumlar için bkz..If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Şunlara uygulanır

Item[Int32]

Dizin tarafından belirtilen sütunda depolanan verileri alır veya ayarlar.Gets or sets the data stored in the column specified by 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

Parametreler

columnIndex
Int32

Sütunun sıfır tabanlı dizini.The zero-based index of the column.

Özellik Değeri

Object

ObjectVerileri içeren bir.An Object that contains the data.

Özel durumlar

Silinen bir satırda bir değer ayarlamaya çalıştığınızda gerçekleşir.Occurs when you try to set a value on a deleted row.

columnIndexBağımsız değişken aralık dışında.The columnIndex argument is out of range.

Değeri ayarladığınızda oluşur ve yeni değer Type eşleşmez DataType .Occurs when you set the value and the new value's Type does not match DataType.

Örnekler

Aşağıdaki örnekler, Item[] belirli bir sütun dizininin değerini almak ve ayarlamak için özelliğinin kullanımını gösterir.The following examples demonstrate the use of the Item[] property to get and set the value of a specific column index. İlk örnek, bir kullanıcının denetimde tıkladığı herhangi bir satırdaki ilk sütunun değerini alır DataGrid .The first example gets the value of the first column in any row that a user clicks in a DataGrid control.

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

Açıklamalar

Özelliği ayarladığınızda, olayda bir özel durum oluşursa bir özel durum oluşturulur ColumnChanging .When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Bu bir düzenleme ise, EndEdit oluşturulabilecek özel durumlar için bkz..If this is an edit, see EndEdit for the exceptions that can be generated.

Şunlara uygulanır

Item[String]

Ada göre belirtilen sütunda depolanan verileri alır veya ayarlar.Gets or sets the data stored in the column specified by name.

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

Parametreler

columnName
String

Sütunun adı.The name of the column.

Özellik Değeri

Object

ObjectVerileri içeren bir.An Object that contains the data.

Özel durumlar

Tarafından belirtilen sütun columnName bulunamıyor.The column specified by columnName cannot be found.

Silinen bir satırda bir değer ayarlamaya çalıştığınızda gerçekleşir.Occurs when you try to set a value on a deleted row.

Bir değer ayarladığınızda oluşur ve Type eşleşmez DataType .Occurs when you set a value and its Type does not match DataType.

Olarak ayarlanmış bir sütuna null değer eklemeye çalıştığınızda gerçekleşir AllowDBNull false .Occurs when you try to insert a null value into a column where AllowDBNull is set to false.

Örnekler

Aşağıdaki örnekler, Item[] belirli bir sütun dizininin değerini almak ve ayarlamak için özelliğinin kullanımını gösterir.The following examples demonstrate the use of the Item[] property to get and set the value of a specific column index. İlk örnek, bir kullanıcının denetimde tıkladığı herhangi bir satırdaki ilk sütunun değerini alır DataGrid .The first example gets the value of the first column in any row that a user clicks in a DataGrid control. İkinci değer, metoduna bağımsız değişken olarak geçirilen bir değeri ayarlar.The second sets a value passed as an argument to the method.

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

Açıklamalar

Özelliği ayarladığınızda, olayda bir özel durum oluşursa bir özel durum oluşturulur ColumnChanging .When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Bu bir anında düzenleme ise, EndEdit oluşturulabilecek özel durumlar için bkz..If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Şunlara uygulanır

Item[DataColumn, DataRowVersion]

Belirtilen verilerin belirtilen sürümünü belirtilen şekilde alır DataColumn .Gets the specified version of data stored in the specified 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

Parametreler

column
DataColumn

DataColumnSütun hakkında bilgi içeren bir.A DataColumn that contains information about the column.

version
DataRowVersion

İstediğiniz DataRowVersion satır sürümünü belirten değerlerden biri.One of the DataRowVersion values that specifies the row version that you want. Olası değerler şunlardır,, Default Original Current ve Proposed .Possible values are Default, Original, Current, and Proposed.

Özellik Değeri

Object

ObjectVerileri içeren bir.An Object that contains the data.

Özel durumlar

Sütun tabloya ait değil.The column does not belong to the table.

columnBağımsız değişken null içeriyor.The column argument contains null.

Satırda bu sürümde veri yoktur.The row does not have this version of data.

Örnekler

Aşağıdaki örnek, denetimde tıklanan bir hücrenin geçerli değerini alır DataGrid .The following example gets the current value of a clicked cell in the DataGrid control.

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

Açıklamalar

, version Özelliği ile karıştırılmamalıdır RowState .The version should not be confused with the RowState property. versionBağımsız değişkeni sütunun özgün değerine göre sütununun içerdiği verilerin durumunu açıklar.The version argument describes the state of the data that is contained by the column relative to the column's original value.

Özelliği ayarladığınızda, olayda bir özel durum oluşursa bir özel durum oluşturulur ColumnChanging .When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Bu bir anında düzenleme ise, EndEdit oluşturulabilecek özel durumlar için bkz..If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Ayrıca bkz.

Şunlara uygulanır

Item[Int32, DataRowVersion]

Alınacak verilerin dizini ve sürümü ile belirtilen sütununda depolanan verileri alır.Gets the data stored in the column, specified by index and version of the data to retrieve.

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

Parametreler

columnIndex
Int32

Sütunun sıfır tabanlı dizini.The zero-based index of the column.

version
DataRowVersion

İstediğiniz DataRowVersion satır sürümünü belirten değerlerden biri.One of the DataRowVersion values that specifies the row version that you want. Olası değerler şunlardır,, Default Original Current ve Proposed .Possible values are Default, Original, Current, and Proposed.

Özellik Değeri

Object

ObjectVerileri içeren bir.An Object that contains the data.

Özel durumlar

columnIndexBağımsız değişken aralık dışında.The columnIndex argument is out of range.

Değerin ve sütunun veri türleri eşleşmiyor.The data types of the value and the column do not match.

Satırda bu sürümde veri yoktur.The row does not have this version of data.

Silinen bir satırda değer ayarlamak için bir girişimde bulunuldu.An attempt was made to set a value on a deleted row.

Örnekler

Aşağıdaki örnek, nesnesinin özelliği aracılığıyla bir sütunun geçerli değerini alır Item[] DataRow .The following example gets the current value of a column through the Item[] property of the 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

Açıklamalar

Yalnızca yöntemi çağırdıktan sonra bir satır oluşturabilir veya güncelleyebilirsiniz BeginEdit ; benzer şekilde, EndEdit düzenleme yürütmek için yöntemi çağrılmalıdır.You can only create or update a row after you call the BeginEdit method; similarly, the EndEdit method must be called to commit the edit. Yöntemini çağırdıktan sonra EndEdit ve yöntemini çağırmadan önce AcceptChanges , özgün ve yeni önerilen değerlerin iç temsilleri depolanır.After you call the EndEdit method, and before you call the AcceptChanges method, internal representations of the original and new proposed values are stored. Bu nedenle, öğesini çağırana kadar AcceptChanges version bağımsız değişkenini kullanarak bir sütun değerinin hangi sürümünü istediğinizi belirtebilirsiniz, DataRowVersion.Original ya da DataRowVersion.Proposed .Therefore, until you call the AcceptChanges, you can use the version argument to specify which version of a column's value you need, either the DataRowVersion.Original or DataRowVersion.Proposed. Ancak, AcceptChanges yöntemini çağırdığınızda sütunun sürümü olarak döner DataRowVersion.Original .However, as soon as you call the AcceptChanges method, the version of the column reverts to DataRowVersion.Original. Satır yeni ise, DataRowVersion.Default sütunun varsayılan değerini almak için parametresini de geçirebilirsiniz.If the row is new, you can also pass DataRowVersion.Default for the parameter to retrieve the column's default value. DataRowVersion.Current' I geçirirken, özelliği geçerli değeri döndürür, bu özelliğin sürümü olabilir.When passing DataRowVersion.Current, the property returns the current value, whatever its version may be.

Not

BeginEditBir veri-bağlantılı denetimin değerini değiştirdiğinizde veya öğesine bir nesne eklendiğinde yöntemi örtük olarak çağrılır DataRow DataRowCollection ; EndEdit aşağıdaki yöntemleri çağırdığınızda yöntem örtük olarak çağrılır: AcceptChanges DataRow nesne yöntemi, AcceptChanges DataTable nesne yöntemi veya CancelEdit yöntemi.The BeginEdit method is called implicitly when you change the value of a data-bound control or when a DataRow object is added to the DataRowCollection; the EndEdit method is called implicitly when you call the following methods: the AcceptChanges method of the DataRow object, the AcceptChanges method of the DataTable object, or the CancelEdit method.

Buna karşılık, DataRowVersion numaralandırma, Current Yöntem çağrıldıktan sonra verinin sürümünü döndürür EndEdit .By contrast, the DataRowVersion enumeration Current returns the version of the data after the EndEdit method has been called.

versionBağımsız değişken, özelliği ile karıştırılmamalıdır RowState .The version argument should not be confused with the RowState property. versionBağımsız değişkeni sütunun özgün değerine göre sütununun içerdiği verilerin durumunu açıklar.The version argument describes the state of the data that is contained by the column relative to the column's original value. RowStateÖzelliği, tüm satırın üst öğesiyle ilişkili durumunu açıklar DataTable .The RowState property describes the state of the whole row relative to its parent DataTable.

Özelliği ayarladığınızda, olayda bir özel durum oluşursa bir özel durum oluşturulur ColumnChanging .When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Bu bir anında düzenleme ise, EndEdit oluşturulabilecek özel durumlar için bkz..If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Şunlara uygulanır

Item[String, DataRowVersion]

Adlandırılmış sütunda depolanan verilerin belirtilen sürümünü alır.Gets the specified version of data stored in the named column.

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

Parametreler

columnName
String

Sütunun adı.The name of the column.

version
DataRowVersion

İstediğiniz DataRowVersion satır sürümünü belirten değerlerden biri.One of the DataRowVersion values that specifies the row version that you want. Olası değerler şunlardır,, Default Original Current ve Proposed .Possible values are Default, Original, Current, and Proposed.

Özellik Değeri

Object

ObjectVerileri içeren bir.An Object that contains the data.

Özel durumlar

Tarafından belirtilen sütun columnName bulunamıyor.The column specified by columnName cannot be found.

Değerin ve sütunun veri türleri eşleşmiyor.The data types of the value and the column do not match.

Satırda bu sürümde veri yoktur.The row does not have this version of data.

Satır silindi.The row was deleted.

Örnekler

Aşağıdaki örnek, bir denetimin tıklanan hücresinde verilerin geçerli sürümünü alır DataGrid .The following example gets the current version of data at a clicked cell of a DataGrid control.

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

Açıklamalar

Sürüm, özelliği ile karıştırılmamalıdır RowState .The version should not be confused with the RowState property. versionBağımsız değişkeni sütunun özgün değerine göre sütununun içerdiği verilerin durumunu açıklar.The version argument describes the state of the data that is contained by the column relative to the column's original value. RowStateÖzelliği, tüm satırın üst öğesiyle ilişkili durumunu açıklar DataTable .The RowState property describes the state of the whole row relative to its parent DataTable.

Özelliği ayarladığınızda, olayda bir özel durum oluşursa bir özel durum oluşturulur ColumnChanging .When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Bu bir anında düzenleme ise, EndEdit oluşturulabilecek özel durumlar için bkz..If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Ayrıca bkz.

Şunlara uygulanır