Я заполняю элемент управления DataGridView в форме Windows (C # 2.0, а не WPF).
Моя цель состоит в том, чтобы отобразить сетку, которая аккуратно заполняет всю доступную ширину ячейками, то есть не использует неиспользуемые (темно-серые) области вниз по правому краю и подбирает каждый столбец соответствующим образом в соответствии с данными, которые он содержит, , но также позволяет пользователю изменять размер любого столбца по своему вкусу.
Я пытаюсь добиться этого, устанавливая AutoSizeMode каждого столбца равным DataGridViewAutoSizeColumnMode.AllCells за исключением одного из столбцов, для которого я установил DataGridViewAutoSizeColumnMode.Fill . вся область сетки аккуратно заполнена данными. (Я не возражаю, что когда пользователь пытается изменить размер этого столбца, он возвращается к размеру, который гарантирует, что горизонтальное пространство всегда используется.)
Однако, как я уже упоминал, после загрузки я хотел бы разрешить пользователю изменять размер столбцов в соответствии со своими требованиями - при установке этих значений AutoSizeMode для каждого столбца оказывается, что пользователь не сможет затем изменить размер этих столбцов.
Я пытался не устанавливать AutoSizeMode для всех столбцов, что позволяет изменять размер, НО не устанавливает начальный размер в соответствии с данными, содержащимися в ячейках. Тот же результат возникает при изменении значения AutoSizeMode сетки обратно на «Не установлено» после загрузки данных.
Есть ли здесь пропущенная настройка, позволяющая автоматически устанавливать ширину столбцов по умолчанию и изменение размера пользователя, или есть другой метод, который я должен использовать при заполнении элемента управления DataGridView?