Как самый правый столбец DataGridView может заполнить оставшуюся часть формы?

У меня есть DataGridView с 5 столбцами, с dock = filled.

Я хочу, чтобы последняя (самая правая) ширина столбца заполняла оставшуюся правую часть формы, когда форма максимизирована.

Как я могу это сделать?

Ответы

Ответ 1

Установите AutoSizeMode столбца (самый правый) на Fill

Ответ 2

Для всех, кто автоматически генерирует свои столбцы (или даже если это не так), вы можете вызвать этот метод расширения на своем DataGridView, чтобы изменить размер последнего столбца на Fill

C-Sharp:

public static class Utilities
{
    public static void StretchLastColumn(this DataGridView dataGridView)
    {
        var lastColIndex = dataGridView.Columns.Count - 1;
        var lastCol = dataGridView.Columns[lastColIndex];
        lastCol.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
    }
}

Visual Basic:

Public Module Utilities

    <Extension()>
    Public Sub StretchLastColumn(ByVal dataGridView As DataGridView)
        Dim lastColIndex = dataGridView.Columns.Count - 1
        Dim lastCol = dataGridView.Columns.Item(lastColIndex)
        lastCol.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
    End Sub

End Module