En mi formulario de windows, necesito de manera programática de establecer el ancho de las columnas en la vista de cuadrícula. Estoy usando el siguiente código:

this.dgridv.Columns[columnName].Width = columnWidth;

La anterior sentencia se ejecuta sin ningún tipo de error. Pero, el ancho de la columna se mantiene sin cambios. Si puedo insertar un punto de interrupción y comprobar el valor de la anchura después de la sentencia se ejecuta, es todavía 100, que supongo que es el valor predeterminado de datagrid ancho de columna.

Hay algo más que deba hacer, aparte de este? Hay valores que necesitas antes de cambiar el ancho de columna?

Cualquier ayuda o consejos sobre esto, son muy apreciados.

Gracias 🙂

3 Comentarios

  1. 2

    Tienes la AutoSizeColumnsMode conjunto para Llenar?

    Si tiene usted necesitará configurar el FillWeight propiedad en su lugar. Esto no es un simple ancho, pero la proporción de width /no. columns que esta columna ocupa.

    Si usted no cambia el tamaño de las columnas será 100.0.

    Si la columna se ha ampliado será > 100.0.

    Si la columna se ha reducido será < 100.0.

    Ampliación de una columna, por definición, se encoge el resto.

  2. 0

    Esto funcionó:

    this.dgridv.Columns[columnName].AutoSizeMode= DataGridViewAutoSizeColumnMode.None;
    this.dgridv.Columns[columnName].Width = columnWidth;

    Para restablecer de nuevo, estoy usando:

    dgvCol.AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
  3. 0

    dataGridView1.Columns[index].Width = 150;

    Esta línea de código se establece el ancho de columna a través de programación.

Dejar respuesta

Please enter your comment!
Please enter your name here