private void btnAgregarDetalle_Click(object sender, EventArgs e)
        {
            FrmMantenimientoComprobanteCompraDetalle frm = new FrmMantenimientoComprobanteCompraDetalle();

            frm.ShowInTaskbar = false;
            frm.BringToFront();
            frm.ListaDetalleInicial = this.listaDetalleInicial;
            frm.ListaDetalleActual  = this.listaDetalle;
            DialogResult dr = frm.ShowDialog();

            if (dr == DialogResult.OK)
            {
                frm.Detalle.CodigoComprobanteCompraDetalle = GenerarCodigoComprobanteCompraDetalleTemporal(frm.Detalle.CodigoProducto);
                listaDetalle.Add(frm.Detalle);
                listaDetalle = listaDetalle.Select((x, i) => { x.Fila = i + 1; return(x); }).ToList();
                ListarComprobanteCompraDetalle();
            }
        }
        private void btnModificarDetalle_Click(object sender, EventArgs e)
        {
            int rowIndex = dgvDetalle.CurrentRow.Index;

            var item      = (ComprobanteCompraDetalleBe)dgvDetalle.Rows[rowIndex].DataBoundItem;
            int indexData = listaDetalle.IndexOf(item);

            List <ProductoIndividualBe> lista = listaProductoIndividual.Where(x => x.CodigoComprobanteCompraDetalle == item.CodigoComprobanteCompraDetalle).ToList();

            FrmMantenimientoComprobanteCompraDetalle frm = new FrmMantenimientoComprobanteCompraDetalle(item, lista.Count);

            frm.ShowInTaskbar = false;
            frm.BringToFront();
            frm.ListaDetalleInicial = this.listaDetalleInicial;
            frm.ListaDetalleActual  = this.listaDetalle;
            DialogResult dr = frm.ShowDialog();

            if (dr == DialogResult.OK)
            {
                listaDetalle[indexData] = frm.Detalle;
                //listaDetalle = listaDetalle.Select((x, i) => { x.Fila = i + 1; return x; }).ToList();
                ListarComprobanteCompraDetalle();
            }
        }