Если вы установите DataGridView.AutoSize == true, тогда, когда вы добавляете больше строк, сетка становится длиннее. В противном случае вы получите полосы прокрутки. Если вы не установили ScrollBars == Null || Горизонтальный, в этом случае строки просто исчезают из конца.
По какой-то причине DataGridView.AutoSize может быть установлен только программно. И есть некоторые странные поведения, наблюдаемые, когда вы помещаете сетку в автоматически изменяемый элемент управления. Кажется, он не реагирует на размер сетки.
В итоге я рассчитал ожидаемый размер сетки из размеров столбцов, строк, заголовков, полей, отступов и границ, а затем определил размер элемента управления, содержащего сетку, и закрепил сетку с четырех сторон. Чувствовал себя очень неуклюже, но это лучшее, что я мог придумать. Если вы все еще здесь, прокомментируйте, и я посмотрю, смогу ли я найти код, у меня его нет под рукой.