Горизонтальная полоса прокрутки не видна в DataGridView - PullRequest
12 голосов
/ 07 марта 2011

У меня есть DataGridView в форме окна, которая заполнена 30 столбцами и тысячами строк.Свойство ScrollBars имеет значение Both, но горизонтальная полоса прокрутки не отображается.даже я не могу прокрутить клавишей со стрелкой на клавиатуре.

Я пробовал, установив для свойства ScrollBars значение Horizontal, но это не имеет значения.

Любые предложенияпожалуйста?

Спасибо

Ответы [ 16 ]

37 голосов
/ 07 марта 2011

Ну, ребята, это разобрано.

Я отвечаю на свой вопрос;это может помочь кому-то в будущем.

В одном из столбцов свойство Frozen установлено как True.который должен быть false для всех столбцов.Теперь ScrollBar работает абсолютно нормально для меня.

Cheers

enter image description here

16 голосов
/ 19 января 2013

Я знаю, что это уже решено, но я столкнулся с другой причиной, по которой это могло произойти, поэтому подумал, что я бы добавил его в качестве ответа на случай, если у кого-то еще возникнет такая же проблема.Ваша форма имеет DataGridView, который прикреплен для заполнения формы, и форма также имеет строку состояния, затем в зависимости от порядка их создания строка состояния может скрыть полосу прокрутки DataGridView.Чтобы это исправить, щелкните правой кнопкой мыши DataGridView и выберите «Переместить на передний план».

3 голосов
/ 27 ноября 2016

У меня была похожая проблема.То, что я сделал, проверил каждый из ваших столбцов Datagrid и установил Frozen в " false ".Надеюсь, это поможет.

3 голосов
/ 04 ноября 2015

Когда я столкнулся с этой досадной проблемой, это было связано со свойством AutoSizeColumnsMode DGV, которое было установлено на Fill

Я исправил его, изменив это свойство на AllCells, но любое другоезначение будет работать.Это работает, даже если DGV пристыкован, и у меня есть несколько пристыкованных панелей, и первый столбец заморожен.

3 голосов
/ 09 января 2012

У меня была эта раздражающая проблема. Я уже создал DataGridView в своей форме и задаю все параметры привязки данных и свойства в файле .CS.

Я только что прокомментировал строку в моем коде за файлом (.cs), т.е.

gvTblContent.AutoSize = true;

Вам не нужно устанавливать свойство AutoSize, горизонтальные и вертикальные полосы прокрутки будут предоставлены по умолчанию, в противном случае вы можете использовать:

gvTblContent.ScrollBars = ScrollBars.Both;
2 голосов
/ 27 февраля 2015

Стыковка. Заполнение DGV немного глючит.
Это происходит, когда у вас несколько закрепленных панелей, панелей инструментов и т. Д. Чаще встречается при создании столбцов во время выполнения.

элемент управления считает, что он шире своего контейнера, а горизонтальная полоса прокрутки не появляется.

Замороженный, авторазмер, бринт на фронт и другие упомянутые средства не всегда работают.Самый надежный обходной путь - это Dock.Left и установка ширины DGV во время выполнения.Таким образом, DGV не запутается в том, насколько он широк.

0 голосов
/ 30 ноября 2018

Все ваши замороженные столбцы должны соответствовать форме. В противном случае горизонтальная полоса прокрутки не отображается. Если горизонтальная полоса прокрутки отсутствует, расширяйте форму до тех пор, пока не увидите последнее замороженное поле, а затем волшебным образом появится горизонтальная полоса прокрутки.

0 голосов
/ 16 сентября 2018

У меня была такая же проблема с DataGridView внутри tableLayoutPanel.

Ничто из перечисленного не помогло мне.

Оказывается, что столбец в tableLayoutPanel, в котором для DataGridView установлено значение AutoSize .

Решение состоит в том, чтобы установить для столбцов tableLayoutPanel фактическое значение или процент.

0 голосов
/ 16 августа 2018

Я установил некоторые первые столбцы, замороженные в true (H_bar) все еще работает. Но я установил замороженный = true для невидимого столбца (column.visible = false), он исчез.

0 голосов
/ 09 июля 2018

В моем случае полоса прокрутки не появлялась до тех пор, пока я не осознал вышеуказанное состояние замороженного столбца и только для чтения.Я сделал замороженные столбцы для столбца только для чтения, а также один редактируемый столбец в моем dataGridView.Когда я удаляю frozen=false для редактируемого столбца, появляется горизонтальная полоса.

...