Программирование PC Как прокрутить вниз DataGridView и ListBox Mon, November 23 2020  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Как прокрутить вниз DataGridView и ListBox Печать
Добавил(а) microsin   

Мне известны два способа, один основан на вычислении количества отображаемых строк, другой в использовании свойства Selected (для DataGridView) или SelectedIndex (для ListBox).

[Прокрутка вниз ListBox]

Способ на основе вычисления количества отображаемых строк:

void ПрокрутитьВниз(ListBox lb)
{
   int visibleItems = lb.ClientSize.Height / lb.ItemHeight;
   lb.TopIndex = Math.Max(lb.Items.Count - visibleItems + 1, 0);
}

Более простой способ, основанный на программном выделении последней строки:

void ПрокрутитьВниз(ListBox lb)
{
   lb.SelectedIndex = lb.Items.Count - 1;
}

[Прокрутка вниз DataGridView]

Способ на основе вычисления количества отображаемых строк:

void ПрокрутитьВниз(DataGridView dgv)
{
   int visibleItems = (dgv.ClientSize.Height - dgv.ColumnHeadersHeight) / dgv.Rows[0].Height;
   dgv.FirstDisplayedScrollingRowIndex =
      Math.Max(dgv.Rows.Count - visibleItems + 1, 0);
}

Более простой способ, основанный на программном выделении последней строки:

void ПрокрутитьВниз(DataGridView dgv)
{
   dgv.CurrentCell = dgv.Rows[dgv.Rows.Count-1].Cells[0];
   dgv.CurrentCell.Selected = false;
}

[Ссылки]

1Visual Studio C#: часто задаваемые вопросы (FAQ).
2Управление выбором и копированием строк ListBox.

 

Добавить комментарий


Защитный код
Обновить

Top of Page