none
cambiar el ancho de la columna de un DataGridView RRS feed

  • Pregunta

  • hola quetal

     

    como se puede tener el ancho de la columna de un DataGridView en la cabecera, para cada uno de mis campos (nombre, apellidos, direccion ect...)

     

     

    bueno yo tengo una idea pero me funciona, me faltatia el tamaño que no se donde colocarlo me dá errores

     

    'tamaño de la cabecera de las columnas

            Me.DataGridView1.RowHeadersWidth.ToString(NombreAmigo.Text)

     

    gracias


    Matiasg
    sábado, 5 de febrero de 2011 19:46

Respuestas

  • hola

    bien en ese caso podrias usar

    DataGridView1.Columns(0).Width = 100

    DataGridView1.Columns(1).Width = 150

    y asi con el resto

    si ash definido 3 columnas seria del cero al 2, si has definido 5 seria del cero al 4

    o sea la coleccion de columnas siempre empieza en cero para el primer item

    saludos

     


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Matiasg sábado, 5 de febrero de 2011 21:15
    sábado, 5 de febrero de 2011 20:45

Todas las respuestas

  • hola quetal

     

    como se puede tener el ancho de la columna de un DataGridView en la cabecera, para cada uno de mis campos (nombre, apellidos, direccion ect...)

     

     

    bueno yo tengo una idea pero me no me funciona, me faltatia el tamaño que no se donde colocarlo me dá errores

     

    'tamaño de la cabecera de las columnas

            Me.DataGridView1.RowHeadersWidth.ToString(NombreAmigo.Text)

     

    gracias

     


    Matiasg


    Matiasg
    sábado, 5 de febrero de 2011 19:47
  • hola

    lo que quieres es mostrar el ancho o asignarlo ?

    lo pregunto porque el ToString no es un metodo que se use de la forma en que lo has realizado

    adeams veo que usas el Me y este claramente es de VB.NET, pero este foro trata de c#

    para obtenerlo podrias usar:

    NombreAmigo.Text = Me.DataGridView1.RowHeadersWidth.ToString()

     

    para asignarlo

    Me.DataGridView1.RowHeadersWidth = 100

     

    recupera que RowHeadersWidth es una propiedad, por eso asignas el valor directo

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    sábado, 5 de febrero de 2011 19:56
  • hola

    si yo que quiero es a cada campo ponerle un tamaño a la cabecera del DataGridView

    NombreAmigo.Text = Me.DataGridView1.RowHeadersWidth = 100

    ApellidosAmigo.Text = Me.DataGridView1.RowHeadersWidth = 150

    pero no me funciona

    si es visual basic.net, perdona no me dado cuenta

    me salgo y me dirijo a foro de visual basic.net

    gracias


    Matiasg
    sábado, 5 de febrero de 2011 20:28
  • si quieres puedo mover al rpegunta de foro

    igualmente, porque asignas de esta forma los datos, no entendi que quieres lograr, si es solo asignar un width asigna el valor directo

    Me.DataGridView1.RowHeadersWidth = 100

    no uses los textbox

    o quieres hacerlo a cada columna en particular un width distrinto?

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    sábado, 5 de febrero de 2011 20:30
  • hola

    SÍ a cada uno distinto  a cada columna

    gracias

     

     


    Matiasg
    sábado, 5 de febrero de 2011 20:35
  • hola

    bien en ese caso podrias usar

    DataGridView1.Columns(0).Width = 100

    DataGridView1.Columns(1).Width = 150

    y asi con el resto

    si ash definido 3 columnas seria del cero al 2, si has definido 5 seria del cero al 4

    o sea la coleccion de columnas siempre empieza en cero para el primer item

    saludos

     


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Matiasg sábado, 5 de febrero de 2011 21:15
    sábado, 5 de febrero de 2011 20:45
  • Hola Lendro Tutini.

    Gracias por tu excelente respuesta. La aproveché.


    pedrocruz28

    martes, 31 de diciembre de 2013 20:13
  • Me parece que si quieres que automáticamente los encabezados del DATAGRIDVIEW se adapten a la información desplegada, solo tienes que cambiar la propiedad:

    AutoSizeColumnMode

    Prueba esto.

    Por cierto, estoy en Visual Basic 2015.


    Roberto

    martes, 18 de agosto de 2015 16:13
  • A lo mejor para alguien que viene buscando la solucion como yo, y lo que estaba no le alcanzo, descubrí el 

    DataGridView1.AutoResizeColumns();

    Y santo remedio!

    miércoles, 11 de noviembre de 2015 16:39
  • Saludos Leandro, he aplicado esta propiedad en un proyecto en C#, en todos mis DataGridView he establecido la propiedad "AutoSizeColumnsMode" en "Fill", algunos ajustan perfectamente la columna deseada aplicando (DataGridView1.Columns(0).Width = 100), pero otros me arrojan el siguiente error: "Referencia a objeto no establecida como instancia de un objeto."

    Esto solo sucede en algunos con la propiedad "AutoSizeColumnsMode" en "Fill", al cambiarla, ajusta la columna deseada sin problemas. A que se puede deber? o que estoy haciendo mal?

    jueves, 24 de marzo de 2016 13:37
  • Hola Leandro

    DataGridView1.Columns(0).Width = 100;

    En que parte se pone esa línea de código?

    saludos

    viernes, 16 de junio de 2017 15:29