none
Error IndexOutOfRangeException DataGriedView (C#) RRS feed

  • Pregunta

  • Buenas :

    Tengo un Problema al usar el DataGridView me marca una Excepcion " IndexOutOfRangeException" :

     IndexOutOfRangeException

    Creo un  DataGridView :

     

    Lo cargo los datos usando esta clase : 

    class Devolucion
        {
            public int IDProducto { get; set; }
            public string Descripcion { get; set; }
            public decimal Precio { get; set; }
            public float CantidadADevolver { get; set; }
            public float PorcentajeIVA { get; set; }
            public float PorcentajeDescuento { get; set; }
        }

    y lo cargo en mi WindowsForms usando una Lista 

    private List<Devolucion> misDevueltosList = new List<Devolucion>();

    Agrego los datos a la Lista usando este Codigo

     Devolucion miDevuelto = new Devolucion();
                miDevuelto.CantidadADevolver = cantidad;
                miDevuelto.Descripcion = misDisponiblesList[ProductoComboBox.SelectedIndex].Descripcion;
                miDevuelto.IDProducto = misDisponiblesList[ProductoComboBox.SelectedIndex].IDProducto;
                miDevuelto.PorcentajeDescuento = misDisponiblesList[ProductoComboBox.SelectedIndex].PorcentajeDescuento;
                miDevuelto.PorcentajeIVA = misDisponiblesList[ProductoComboBox.SelectedIndex].PorcentajeIVA;
                miDevuelto.Precio = misDisponiblesList[ProductoComboBox.SelectedIndex].Precio;
    
                misDevueltosList.Add(miDevuelto);

    Después de agregar cada registro uso esto :

     DevueltoDataGridView.DataSource = null;
     DevueltoDataGridView.DataSource = misDevueltosList;

    Personalizo el Grid de esta forma lo hago para todas las filas 

     DevueltoDataGridView.Columns["IDProducto"].HeaderText = "ID Producto";
     DevueltoDataGridView.Columns["IDProducto"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
     DevueltoDataGridView.Columns["Descripcion"].Width = 80;

    Funciona de Forma correcta , pero tengo el problema que al hacer clic en el grid (en cualquier parte) me marca el error "IndexOutOfRangeException" descrito en la primera imagen.

    Saludos


    miércoles, 25 de marzo de 2015 1:36

Todas las respuestas

  • Hola,

    Algún procedimiento de evento se está desencadenando, al parecer no lo estás controlando.

    miércoles, 25 de marzo de 2015 3:31
  • Buenas gracias por la ayuda. Estoy revisando el código nuevamente pero aun no encuentro el problema 

    jueves, 26 de marzo de 2015 1:14
  • En la imagen que has mostrado, puedes pulsar en el cuadro que te sale con la excepción un link que pone Ver Detalle... puedes mostranos el contenido de StackTrace y de InnerException?

    Tambien puedes hacer los siguiente:

    Ve al menu Depurar/Excepciones/Marca la casilla Common Runtime Exception. Esto provoca que en la depuración, cuando se genere una excpción, la ejecución del código se para en la linea que provoca dicho error. Así se puede verificar mejor qué está pasando


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

    jueves, 26 de marzo de 2015 7:27