Pregunta

Como se describe en esta pregunta , parece que la altura mínima de fila para una fila en un DataGridView (WinForm no WPF) es 17 si desea mostrar casillas de verificación en un DataGridViewCheckBoxCell. ¡Más pequeño y la casilla de verificación simplemente desaparece!

¿Hay alguna forma de colocar una casilla de verificación más pequeña en una celda DataGridView?

¿Fue útil?

Solución

Si ahora está usando .NET 4.0, puede usar el DataGridView.RowTemplate para ajustar la altura mínima.

Por ejemplo,

DataGridViewRow row = this.dataGridView1.RowTemplate;
row.DefaultCellStyle.BackColor = Color.Bisque;
row.Height = 35;
row.MinimumHeight = 20;

Sin embargo, como lo demuestra esta respuesta de MSDN la altura mínima para una fila con casillas de verificación es 17 píxeles . Parece que no hay forma de evitar este problema.

Otros consejos

De hecho, tendrás que dibujar el control tú mismo. En el lado positivo ... dibujar el control usted mismo no es realmente tan difícil. Esto es un ejemplo decente de dibujar su propia casilla de verificación (estamos usando algo más bien similar en nuestro propio código).

Simplemente, en lugar de anularlo para que parezca deshabilitado, desea anularlo para que el cuadro sea más pequeño ... No veo ninguna forma de llamar a CheckBoxRenderer.DrawCheckBox con un tamaño, pero no debería haber nada que se detenga de dibujar en su propio objeto gráfico, reducirlo usted mismo y luego dibujar la imagen que acaba de reducir.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top