Я думаю, у вас есть правильная идея, но есть небольшая изюминка с тем, как работает Fill.Вот пример кода, который почти сделает то, что вы хотите, и похоже, что вы уже почти все это сделали:
public Form1()
{
InitializeComponent();
this.dataGridView1.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.False;
this.dataGridView1.ColumnHeadersDefaultCellStyle.WrapMode = DataGridViewTriState.False;
this.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
this.dataGridViewColumnName.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
this.dataGridViewColumnName.MinimumWidth = 60;
}
Единственный улов здесь - я установил MinimumWidth в столбце Name, потому чтонет DataGridViewAutoSizeColumnMode, как AllCellsFillRemaining.Если вы не установите MinimumWidth для столбца, установленного на Fill, он может быть уменьшен до нескольких пикселей, если все остальные столбцы вытесняют его.Чтобы по-настоящему понять поведение, к которому вы стремитесь, я считаю, что вам нужно переопределить поведение автоматического размера.