verificar si una barra de desplazamiento está visible en una vista de cuadrícula de datos

verificar si una barra de desplazamiento está visible en una vista de cuadrícula de datos

Puedes probar esto:

foreach (var scroll in dataGridView1.Controls.OfType<VScrollBar>())
{
   //your checking here
   //specifically... if(scroll.Visible)
}

Prefiero este :

//modif is a modifier for the adjustment of the Client size of the DGV window
//getDGVWidth() is a custom method to get needed width of the DataGridView

int modif = 0;
if (DataGridView.Controls.OfType<VScrollBar>().First().Visible)
{
    modif = SystemInformation.VerticalScrollBarWidth;
}
this.ClientSize = new Size(getDGVWidth() + modif, [wantedSizeOfWindow]);

por lo que la única condición booleana que necesita es:

if (DataGridView.Controls.OfType<VScrollBar>().First().Visible)
{
    //want you want to do
}

El DataGridView de Scrollbars Propiedad puede ser cuestionado usando el ScrollBars Enumeración enmascarándolo con el que le interesa así:

if ((dataGridView1.ScrollBars & ScrollBars.Vertical) != ScrollBars.None) ...

¡Tenga en cuenta que las dos 'ScrollBars' son cosas diferentes aquí!