DataGridView.RowCount Propiedad

Definición

Obtiene o establece el número de filas que se muestran en el control DataGridView.Gets or sets the number of rows displayed in the DataGridView.

public:
 property int RowCount { int get(); void set(int value); };
[System.ComponentModel.Browsable(false)]
public int RowCount { get; set; }
member this.RowCount : int with get, set
Public Property RowCount As Integer

Valor de propiedad

Int32

Número de filas que se muestran en el control DataGridView.The number of rows to display in the DataGridView.

Atributos

Excepciones

El valor especificado al establecer esta propiedad es menor que 0.The specified value when setting this property is less than 0.

O bien-or- El valor especificado es menor que 1 y AllowUserToAddRows se establece en true.The specified value is less than 1 and AllowUserToAddRows is set to true.

Al establecer esta propiedad, se establece la propiedad DataSource .When setting this property, the DataSource property is set.

Ejemplos

En el ejemplo de código siguiente se muestra el uso de la propiedad RowCount.The following code example demonstrates the use of the RowCount property. En este ejemplo, esta propiedad se utiliza para realizar el seguimiento del número de entradas de un DataGridView.In this example, this property is used to track the number of entries in a DataGridView. Este ejemplo forma parte de un ejemplo más grande disponible en el evento SelectionChanged.This example is part of a larger example available in the SelectionChanged event.

private void UpdateLabelText()
{
    int WithdrawalTotal = 0;
    int DepositTotal = 0;
    int SelectedCellTotal = 0;
    int counter;

    // Iterate through all the rows and sum up the appropriate columns.
    for (counter = 0; counter < (DataGridView1.Rows.Count);
        counter++)
    {
        if (DataGridView1.Rows[counter].Cells["Withdrawals"].Value
            != null)
        {
            if (DataGridView1.Rows[counter].
                Cells["Withdrawals"].Value.ToString().Length != 0)
            {
                WithdrawalTotal += int.Parse(DataGridView1.Rows[counter].
                    Cells["Withdrawals"].Value.ToString());
            }
        }

        if (DataGridView1.Rows[counter].Cells["Deposits"].Value != null)
        {
            if (DataGridView1.Rows[counter]
                .Cells["Deposits"].Value.ToString().Length != 0)
            {
                DepositTotal += int.Parse(DataGridView1.Rows[counter]
                    .Cells["Deposits"].Value.ToString());
            }
        }
    }

    // Iterate through the SelectedCells collection and sum up the values.
    for (counter = 0;
        counter < (DataGridView1.SelectedCells.Count); counter++)
    {
        if (DataGridView1.SelectedCells[counter].FormattedValueType ==
            Type.GetType("System.String"))
        {
            string value = null;

            // If the cell contains a value that has not been commited,
            // use the modified value.
            if (DataGridView1.IsCurrentCellDirty == true)
            {

                value = DataGridView1.SelectedCells[counter]
                    .EditedFormattedValue.ToString();
            }
            else
            {
                value = DataGridView1.SelectedCells[counter]
                    .FormattedValue.ToString();
            }
            if (value != null)
            {
                // Ignore cells in the Description column.
                if (DataGridView1.SelectedCells[counter].ColumnIndex !=
                    DataGridView1.Columns["Description"].Index)
                {
                    if (value.Length != 0)
                    {
                        SelectedCellTotal += int.Parse(value);
                    }
                }
            }
        }
    }

    // Set the labels to reflect the current state of the DataGridView.
    Label1.Text = "Withdrawals Total: " + WithdrawalTotal.ToString();
    Label2.Text = "Deposits Total: " + DepositTotal.ToString();
    Label3.Text = "Selected Cells Total: " + SelectedCellTotal.ToString();
    Label4.Text = "Total entries: " + DataGridView1.RowCount.ToString();
}
Private Sub UpdateLabelText()
    Dim WithdrawalTotal As Integer = 0
    Dim DepositTotal As Integer = 0
    Dim SelectedCellTotal As Integer = 0
    Dim counter As Integer

    ' Iterate through all the rows and sum up the appropriate columns.
    For counter = 0 To (DataGridView1.Rows.Count - 1)
        If Not DataGridView1.Rows(counter) _
            .Cells("Withdrawals").Value Is Nothing Then

            If Not DataGridView1.Rows(counter) _
                .Cells("Withdrawals").Value.ToString().Length = 0 Then

                WithdrawalTotal += _
                    Integer.Parse(DataGridView1.Rows(counter) _
                    .Cells("Withdrawals").Value.ToString())
            End If
        End If

        If Not DataGridView1.Rows(counter) _
            .Cells("Deposits").Value Is Nothing Then

            If Not DataGridView1.Rows(counter) _
                .Cells("Deposits").Value.ToString().Length = 0 Then

                DepositTotal += _
                    Integer.Parse(DataGridView1.Rows(counter) _
                    .Cells("Deposits").Value.ToString())
            End If
        End If
    Next

    ' Iterate through the SelectedCells collection and sum up the values.
    For counter = 0 To (DataGridView1.SelectedCells.Count - 1)
        If DataGridView1.SelectedCells(counter).FormattedValueType Is _
        Type.GetType("System.String") Then

            Dim value As String = Nothing

            ' If the cell contains a value that has not been commited,
            ' use the modified value.
            If (DataGridView1.IsCurrentCellDirty = True) Then

                value = DataGridView1.SelectedCells(counter) _
                    .EditedFormattedValue.ToString()
            Else

                value = DataGridView1.SelectedCells(counter) _
                    .FormattedValue.ToString()
            End If

            If value IsNot Nothing Then

                ' Ignore cells in the Description column.
                If Not DataGridView1.SelectedCells(counter).ColumnIndex = _
                    DataGridView1.Columns("Description").Index Then

                    If Not value.Length = 0 Then
                        SelectedCellTotal += Integer.Parse(value)
                    End If
                End If
            End If
        End If

    Next

    ' Set the labels to reflect the current state of the DataGridView.
    Label1.Text = "Withdrawals Total: " & WithdrawalTotal.ToString()
    Label2.Text = "Deposits Total: " & DepositTotal.ToString()
    Label3.Text = "Selected Cells Total: " & SelectedCellTotal.ToString()
    Label4.Text = "Total entries: " & DataGridView1.RowCount.ToString()
End Sub

Comentarios

Si RowCount se establece en un valor menor que el valor actual, las filas se quitarán del final de la colección de Rows.If RowCount is set to a value less than the current value, rows will be removed from the end of the Rows collection. Si RowCount se establece en un valor mayor que el valor actual, las filas se agregarán al final de la colección de Rows.If RowCount is set to a value greater than the current value, rows will be added to the end of the Rows collection. Las filas adicionales se basan en la fila especificada en la propiedad RowTemplate.The additional rows are based on the row specified in the RowTemplate property.

Si establece la propiedad RowCount en 0, todas las filas se quitarán de la DataGridView.If you set the RowCount property to 0, all rows will be removed from the DataGridView. Esto es equivalente a llamar al método DataGridViewRowCollection.Clear.This is equivalent to calling the DataGridViewRowCollection.Clear method.

Nota

Si AllowUserToAddRows se true, no se puede establecer RowCount en 0.If AllowUserToAddRows is true, you cannot set RowCount to 0. En este caso, llame al método DataGridViewRowCollection.Clear para quitar todas las filas excepto la fila de los nuevos registros.In this case, call the DataGridViewRowCollection.Clear method to remove all rows except the row for new records. Llamar a Clear tiene el mismo resultado que establecer RowCount en 1 en este caso, pero es mucho más rápido.Calling Clear has the same result as setting RowCount to 1 in this case, but is much faster.

La propiedad RowCount se puede utilizar con la propiedad ColumnCount para crear un DataGridView simple para mostrar y editar texto.The RowCount property can be used with the ColumnCount property to create a simple DataGridView for displaying and editing text. Si establece la propiedad RowCount en un valor mayor que 0 para un control DataGridView sin columnas, se agregará automáticamente una DataGridViewTextBoxColumn.If you set the RowCount property to a value greater than 0 for a DataGridView control without columns, a DataGridViewTextBoxColumn is added automatically.

Se aplica a

Consulte también: