DataGridView.RowCount Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define o número de linhas exibidas no DataGridView.
public:
property int RowCount { int get(); void set(int value); };
[System.ComponentModel.Browsable(false)]
public int RowCount { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.RowCount : int with get, set
Public Property RowCount As Integer
Valor da propriedade
O número de linhas a serem exibidas no DataGridView.
- Atributos
Exceções
O valor especificado ao definir essa propriedade é menor que 0.
- ou -
O valor especificado é menor que 1 e AllowUserToAddRows é definido como true
.
Ao definir essa propriedade, a propriedade DataSource é definida.
Exemplos
O exemplo de código a seguir demonstra o uso da RowCount propriedade . Neste exemplo, essa propriedade é usada para acompanhar o número de entradas em um DataGridView. Este exemplo faz parte de um exemplo maior disponível no SelectionChanged evento.
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
Comentários
Se RowCount for definido como um valor menor que o valor atual, as linhas serão removidas do final da Rows coleção. Se RowCount for definido como um valor maior que o valor atual, as linhas serão adicionadas ao final da Rows coleção. As linhas adicionais são baseadas na linha especificada na RowTemplate propriedade .
Se você definir a RowCount propriedade como 0, todas as linhas serão removidas do DataGridView. Isso é equivalente a chamar o DataGridViewRowCollection.Clear método .
Observação
Se AllowUserToAddRows for true
, você não poderá definir RowCount como 0. Nesse caso, chame o DataGridViewRowCollection.Clear método para remover todas as linhas, exceto a linha de novos registros. Chamar Clear tem o mesmo resultado que definir RowCount como 1 nesse caso, mas é muito mais rápido.
A RowCount propriedade pode ser usada com a ColumnCount propriedade para criar um simples DataGridView para exibir e editar texto. Se você definir a RowCount propriedade como um valor maior que 0 para um DataGridView controle sem colunas, um DataGridViewTextBoxColumn será adicionado automaticamente.