none
'Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index' RRS feed

  • Pregunta

  • Buenas tardes, estoy intentando agregar una fila a un datagridview con este codigo:

    string[] fila = new string[] { txtidproducto.Text, txtproducto.Text,txtmarca.Text,txtdescripcion.Text,txtcantidad.Text,txtprecio.Text};
    
                                        dtgv.Rows.Add(fila);

    pero me indica el error del titulo , tengo el AllowUserToAddRows=false

    no se si eso afecta. por favor ayuda.



    samuel


    • Editado Samuel Ignacio sábado, 15 de diciembre de 2018 20:04 cambio procedimiento de insercion
    sábado, 15 de diciembre de 2018 18:28

Respuestas

  • hola

    No se agrega filas de esa forma, si quieres agregar uan row usarias

    string[] fila = new string[] {txtidproducto.Text, txtproducto.Text, ...};
    
    dtgv.Rows.Add(fila);

    asi de simple

    Recuerda que debes definir las columnas en tiempo de diseño

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta Samuel Ignacio sábado, 15 de diciembre de 2018 21:22
    sábado, 15 de diciembre de 2018 19:27
  • Hola. En tu código si te fijas agregas puna fila con 6 elementos. Recuerda que los arrays van en base 0. Entonces puedes acceder desde los campos 0..5

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    • Marcado como respuesta Samuel Ignacio sábado, 15 de diciembre de 2018 21:22
    sábado, 15 de diciembre de 2018 21:21
    Moderador

Todas las respuestas

  • Hola. Pon un punto de ruptura después de CreateCells() y verifica el tamaño de la colección Cells. Seguro que es menor a 6

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    sábado, 15 de diciembre de 2018 18:43
    Moderador
  • Buenas tardes, gracias por responder, hice lo que indicaste, efectivamente es menor de 6 pero no se como aumentarlo podrias indicarme un ejemplo de como hacerlo?

    samuel

    sábado, 15 de diciembre de 2018 18:54
  • hola

    No se agrega filas de esa forma, si quieres agregar uan row usarias

    string[] fila = new string[] {txtidproducto.Text, txtproducto.Text, ...};
    
    dtgv.Rows.Add(fila);

    asi de simple

    Recuerda que debes definir las columnas en tiempo de diseño

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta Samuel Ignacio sábado, 15 de diciembre de 2018 21:22
    sábado, 15 de diciembre de 2018 19:27
  • Hola. En tu código si te fijas agregas puna fila con 6 elementos. Recuerda que los arrays van en base 0. Entonces puedes acceder desde los campos 0..5

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    • Marcado como respuesta Samuel Ignacio sábado, 15 de diciembre de 2018 21:22
    sábado, 15 de diciembre de 2018 21:21
    Moderador