Подсчитайте видимые строки в DataGridView, используя Powershell

После того как я использовал $DataGridView1.Rows[$row.Index].Visible = $false Чтобы скрыть несколько строк, мне нужно посчитать, сколько их видно сейчас.

Если я использую $DataGridView1.Rows.GetRowCount.ToString()

Я получаю этот результат:

int GetRowCount(System.Windows.Forms.DataGridViewElementStates includeFilter)

Итак, если я использую $DataGridView1.Rows.GetRowCount($DataGridViewElementStates.Visible)

Я ожидал бы количество видимых строк в моем DataGridView, но он возвращает исключение:

    Cannot convert argument "includeFilter", with value: "", for "GetRowCount" 
to type "System.Windows.Forms.DataGridViewElementStates": "Cannot convert null 
to type "System.Windows.Forms.DataGridViewElementStates" due to enumeration 
values that are not valid. Specify one of the following enumeration values and 
try again. The possible enumeration values are 
"None,Displayed,Frozen,ReadOnly,Resizable,ResizableSet,Selected,Visible"."

Что я делаю неправильно?

1 ответ

Решение

Как показывает ошибка, вам нужно указать значение типа System.Windows.Forms.DataGridViewElementStates:

$DataGridView1.Rows.GetRowCount([System.Windows.Forms.DataGridViewElementStates]::Visible)
Другие вопросы по тегам