2012-05-31 76 views
7

El DataGridView (Formulario) contiene suficientes filas para mostrar la barra de desplazamiento vertical. Pero no está habilitado. Falta el Silder for Movement y el botón arriba y el botón abajo están atenuados.C# DataGridView- Cómo habilitar la barra de desplazamiento vertical

=> hay una barra de desplazamiento vertical pero no está habilitada.

me trataron:

  1. Después de llenar el DataGridView el control se actualiza.
  2. Redimensionamiento de todo el panel.
  3. El atributo Frozen es falso.
  4. I un clic en una celda, puedo usar las teclas hacia arriba y hacia abajo para desplazarme, pero la barra de desplazamiento no estará habilitada.

Si cambio el tamaño del control mientras se ejecuta (DataGridView está en un panel dividido) la barra de desplazamiento se puede utilizar, por ejemplo, ahora está habilitada.

+0

¿Has probado esto? http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.horizontalscrollbar.aspx – Polynomial

+2

si está hablando de filas y botón arriba y abajo, entonces creo que puede estar buscando el VerticalScrollbar – paul

+0

consulte http://social.msdn.microsoft.com/Forums/en-US/winformsdatacontrols/thread/9c9d2d67-c45f-4318-81ef-bf652358f582/ –

Respuesta

6

Prueba esto:

1. Una de sus columnas tiene la propiedad probablemente congelada establecer como True.

que debería ser False para todas las columnas.

2. Establecer la AutoSizeMode de la columna problemático AllCells

3. mygrid.DockStyle = DockStyle.Fill

+0

Lo comprobé dos veces, y no, ninguna de mis columnas se ha congelado como verdadero. – Thomas

+0

respuesta actualizada. – lolo

+0

2. | fue: llenar | es: AllCells | - y ahí está, ¡los controles deslizantes están habilitados y se pueden usar! ¿Como y por qué? Pero muchas gracias – Thomas

2

propiedad ScrollBar Conjunto de DataGridView es a la vez.

+0

La clase DataGridView no tiene una propiedad llamada AutoScroll (buscó esta también) Consulte: http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.aspx – Thomas

+0

anterior Estaba pensando que estás preguntando sobre el control Dot net bar datagridview. – Asif

0

Tuve un problema similar con la barra de desplazamiento horizontal. Hacer PerformLayout en la grilla no lo resolvió. Resulta que el problema en mi caso era que el formulario estaba deshabilitado. Tenemos una infraestructura que desactiva el formulario en la carga, carga un montón de cosas de forma asíncrona y al final habilita el formulario. Por alguna razón, esto fue suficiente para que la barra de desplazamiento permanezca deshabilitada cuando se habilitó el formulario (y al igual que en su escenario el cambio de tamaño del formulario mientras se ejecuta habilitó la barra de desplazamiento). Entonces, para mí, la solución fue llamar al PerformLayout en la cuadrícula después de habilitando el formulario.

1
  1. Debe atracar llenar su DataGridView al panel
  2. Si usted tiene algunas filas congelados, asegúrese de estas filas se establecen después de haber terminado con lo que los datos a su gridview

Si se establece la fila inmovilizada antes, la fila cuando se agrega tomará el estilo predeterminado de la primera fila, y todas las filas de la vista de grilla tendrán la opción row.frozen = true. Es por eso que el desplazamiento vertical no aparecerá.

Cuestiones relacionadas