다음을 통해 공유


DataGridView.AreAllCellsSelected(Boolean) 메서드

정의

현재 모든 DataGridView 셀이 선택되어 있는지 여부를 나타내는 값을 반환합니다.

public:
 bool AreAllCellsSelected(bool includeInvisibleCells);
public bool AreAllCellsSelected (bool includeInvisibleCells);
member this.AreAllCellsSelected : bool -> bool
Public Function AreAllCellsSelected (includeInvisibleCells As Boolean) As Boolean

매개 변수

includeInvisibleCells
Boolean

Visible 속성 값이 false인 행과 열을 포함하려면 true이고, 그렇지 않으면 false입니다.

반환

모든 셀(또는 표시되는 모든 셀)이 선택되었거나 선택된 셀(또는 표시되는 셀)이 없으면 true이고, 그렇지 않으면 false입니다.

예제

다음 코드 예제에서는 이 메서드를 사용하여 컬렉션과 관련된 SelectedCells 계산을 방지하는 방법을 보여 줍니다.

private void selectedCellsButton_Click(object sender, System.EventArgs e)
{
    Int32 selectedCellCount =
        dataGridView1.GetCellCount(DataGridViewElementStates.Selected);
    if (selectedCellCount > 0)
    {
        if (dataGridView1.AreAllCellsSelected(true))
        {
            MessageBox.Show("All cells are selected", "Selected Cells");
        }
        else
        {
            System.Text.StringBuilder sb =
                new System.Text.StringBuilder();

            for (int i = 0;
                i < selectedCellCount; i++)
            {
                sb.Append("Row: ");
                sb.Append(dataGridView1.SelectedCells[i].RowIndex
                    .ToString());
                sb.Append(", Column: ");
                sb.Append(dataGridView1.SelectedCells[i].ColumnIndex
                    .ToString());
                sb.Append(Environment.NewLine);
            }

            sb.Append("Total: " + selectedCellCount.ToString());
            MessageBox.Show(sb.ToString(), "Selected Cells");
        }
    }
}
Private Sub selectedCellsButton_Click( _
    ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles selectedCellsButton.Click

    Dim selectedCellCount As Integer = _
        dataGridView1.GetCellCount(DataGridViewElementStates.Selected)

    If selectedCellCount > 0 Then

        If dataGridView1.AreAllCellsSelected(True) Then

            MessageBox.Show("All cells are selected", "Selected Cells")

        Else

            Dim sb As New System.Text.StringBuilder()

            Dim i As Integer
            For i = 0 To selectedCellCount - 1

                sb.Append("Row: ")
                sb.Append(dataGridView1.SelectedCells(i).RowIndex _
                    .ToString())
                sb.Append(", Column: ")
                sb.Append(dataGridView1.SelectedCells(i).ColumnIndex _
                    .ToString())
                sb.Append(Environment.NewLine)

            Next i

            sb.Append("Total: " + selectedCellCount.ToString())
            MessageBox.Show(sb.ToString(), "Selected Cells")

        End If

    End If

End Sub

설명

SelectedCells 컬렉션이 대규모 선택에서는 효율적으로 수행되지 않습니다. SelectedCells 컬렉션의 내용에 액세스하기 전에 DataGridView의 셀이 모두 선택되었는지 여부를 확인하려면 AreAllCellsSelected 메서드의 반환 값을 확인합니다. 그러나 이 메서드를 사용하면 행이 공유되지 않게 될 수 있습니다. 성능에 대한 DataGridView 자세한 내용은 Windows Forms DataGridView 컨트롤 크기 조정 모범 사례를 참조하세요.

적용 대상

추가 정보