DataGridView.RowCount DataGridView.RowCount DataGridView.RowCount DataGridView.RowCount Property

定義

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

プロパティ値

DataGridView に表示する行数。The number of rows to display in the DataGridView.

例外

このプロパティの設定時に指定された値が 0 未満です。The specified value when setting this property is less than 0.

- または --or- 指定された値が 1 未満で、AllowUserToAddRowstrue に設定されています。The specified value is less than 1 and AllowUserToAddRows is set to true.

このプロパティを設定すると、DataSource プロパティが設定されます。When setting this property, the DataSource property is set.

次のコード例は、の使用を示します、RowCountプロパティ。The following code example demonstrates the use of the RowCount property. この例でこのプロパティは、エントリの数を追跡するために使用されます、DataGridViewします。In this example, this property is used to track the number of entries in a DataGridView. この例は例で使用できる、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

注釈

場合RowCount設定の末尾から、行を削除する値が現在の値未満で、Rowsコレクション。If RowCount is set to a value less than the current value, rows will be removed from the end of the Rows collection. 場合RowCount設定の末尾に、行を追加する現在の値より大きい値をRowsコレクション。If RowCount is set to a value greater than the current value, rows will be added to the end of the Rows collection. 指定された行に基づいて、追加の行、RowTemplateプロパティ。The additional rows are based on the row specified in the RowTemplate property.

設定した場合、RowCountプロパティを 0 に、すべての行はから削除されます、DataGridViewします。If you set the RowCount property to 0, all rows will be removed from the DataGridView. これは、呼び出しに相当、DataGridViewRowCollection.Clearメソッド。This is equivalent to calling the DataGridViewRowCollection.Clear method.

注意

場合AllowUserToAddRowstrueを設定することはできませんRowCountを 0 にします。If AllowUserToAddRows is true, you cannot set RowCount to 0. この場合、呼び出し、DataGridViewRowCollection.Clear新しいレコードの行を除くすべての行を削除する方法。In this case, call the DataGridViewRowCollection.Clear method to remove all rows except the row for new records. 呼び出すClear設定と同じ結果がRowCountをここでは 1 に、高速です。Calling Clear has the same result as setting RowCount to 1 in this case, but is much faster.

RowCountプロパティで使用できます、ColumnCountプロパティを単純なDataGridViewを表示すると、テキストを編集します。The RowCount property can be used with the ColumnCount property to create a simple DataGridView for displaying and editing text. 設定した場合、RowCountプロパティの場合は 0 より大きい値をDataGridView、列のないコントロールをDataGridViewTextBoxColumn自動的に追加されます。If you set the RowCount property to a value greater than 0 for a DataGridView control without columns, a DataGridViewTextBoxColumn is added automatically.

適用対象

こちらもご覧ください