DataGridView.AutoSizeColumnsMode Propiedad

Definición

Obtiene o establece un valor que indica cómo se determina el ancho de las columnas.

public:
 property System::Windows::Forms::DataGridViewAutoSizeColumnsMode AutoSizeColumnsMode { System::Windows::Forms::DataGridViewAutoSizeColumnsMode get(); void set(System::Windows::Forms::DataGridViewAutoSizeColumnsMode value); };
public System.Windows.Forms.DataGridViewAutoSizeColumnsMode AutoSizeColumnsMode { get; set; }
member this.AutoSizeColumnsMode : System.Windows.Forms.DataGridViewAutoSizeColumnsMode with get, set
Public Property AutoSizeColumnsMode As DataGridViewAutoSizeColumnsMode

Valor de propiedad

DataGridViewAutoSizeColumnsMode

Valor DataGridViewAutoSizeColumnsMode. De manera predeterminada, es None.

Excepciones

El valor especificado al establecer esta propiedad no es un valor de DataGridViewAutoSizeColumnsMode válido.

El valor especificado al establecer esta propiedad es ColumnHeader, los encabezados de columna se ocultan y al menos una columna visible tiene un valor de propiedad AutoSizeMode de NotSet.

o bien El valor especificado al establecer esta propiedad es Fill y al menos una columna visible con un valor de la propiedad AutoSizeMode de NotSet está inmovilizada.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar esta propiedad en un escenario maestro/detalle donde dos DataGridView controles muestran datos de dos tablas en una relación primaria o secundaria. En este ejemplo, el modo de ajuste de tamaño de columna para el control maestro es Noney los anchos de columna se inicializan mediante programación para ajustarse a los valores cargados. El control de detalles se establece en un modo de ajuste de tamaño de columna automático para que las columnas se ajusten automáticamente cada vez que cambien los valores (por ejemplo, cuando el usuario cambia la fila actual de la tabla primaria). Este ejemplo forma parte de un ejemplo más grande disponible en How to: Create a Master/Detail Form Using Two Windows Forms DataGridView Controls.

private void Form1_Load(object sender, System.EventArgs e)
{
    // Bind the DataGridView controls to the BindingSource
    // components and load the data from the database.
    masterDataGridView.DataSource = masterBindingSource;
    detailsDataGridView.DataSource = detailsBindingSource;
    GetData();

    // Resize the master DataGridView columns to fit the newly loaded data.
    masterDataGridView.AutoResizeColumns();

    // Configure the details DataGridView so that its columns automatically
    // adjust their widths when the data changes.
    detailsDataGridView.AutoSizeColumnsMode = 
        DataGridViewAutoSizeColumnsMode.AllCells;
}
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Load

    ' Bind the DataGridView controls to the BindingSource
    ' components and load the data from the database.
    masterDataGridView.DataSource = masterBindingSource
    detailsDataGridView.DataSource = detailsBindingSource
    GetData()

    ' Resize the master DataGridView columns to fit the newly loaded data.
    masterDataGridView.AutoResizeColumns()

    ' Configure the details DataGridView so that its columns automatically
    ' adjust their widths when the data changes.
    detailsDataGridView.AutoSizeColumnsMode = _
        DataGridViewAutoSizeColumnsMode.AllCells

End Sub

Comentarios

Esta propiedad permite configurar el control para que los anchos de columna se ajusten automáticamente para rellenar el control o para ajustarse al contenido de la celda. Los ajustes de tamaño se producen en modo de relleno cada vez que cambia el ancho del control. En los modos de ajuste de tamaño basados en contenido, los ajustes de tamaño se producen cada vez que cambia el contenido de la celda o, si WrapMode está habilitado, siempre que cambie el alto de fila. Algunos modos de ajuste de tamaño basados en contenido permiten limitar el ajuste de tamaño a las filas mostradas actualmente para aumentar el rendimiento.

Para cambiar el modo de ajuste de tamaño de una columna individual, establezca su AutoSizeMode propiedad. El valor predeterminado de esta propiedad es NotSet, lo que indica que la columna hereda su comportamiento y su InheritedAutoSizeMode valor de propiedad del control.

Las columnas en modo de relleno dividen el ancho de control disponible en proporciones indicadas por sus FillWeight valores de propiedad. El ancho disponible para el modo de relleno se determina restando los anchos de todas las demás columnas del ancho del área cliente del control. Si este ancho es menor que los valores combinados MinimumWidth de todas las columnas en modo de relleno, se muestra la barra de desplazamiento horizontal, se muestran todas las columnas en modo de relleno con sus anchos mínimos y el cambio de tamaño de columna de usuario está deshabilitado. Para obtener más información sobre el modo de relleno de columnas, vea Modo de relleno de columnas en el control Windows Forms DataGridView.

Solo las columnas con un Visible valor de propiedad de true se cambian automáticamente de tamaño y el cambio de visibilidad de una columna no hace que se produzca el cambio de tamaño. Además, cuando las columnas se establecen para cambiar el tamaño automáticamente, el usuario no puede ajustar los anchos de columna con el mouse.

Para ajustar los anchos de columna mediante programación, use los AutoResizeColumn métodos o AutoResizeColumns o establezca la propiedad column Width .

Para obtener más información sobre el ajuste de tamaño automático basado en contenido, vea Opciones de ajuste de tamaño en el control dataGridView de Windows Forms.

Se aplica a

Consulte también