protected void btnGrabarDetalle_Click(object sender, EventArgs e) { try { if (txtCantidad.Text == "") { throw new Exception("Debe ingresar una cantidad"); } detalles = (DataTable)Session["Detalles"]; DataRow dr; dr = detalles.NewRow(); //dr["id_lista"] = cboProducto.SelectedValue.ToString(); dr["id_detalle_cotizacion"] = Guid.NewGuid(); //dr["nombre"] = cboProducto.SelectedValue.ToString(); dr["id_item"] = Convert.ToInt16(cboProducto.SelectedValue); dr["cantidad"] = Convert.ToInt16(txtCantidad.Text); dr["descuento"] = Convert.ToInt16(txtDescuento.Text); dr["nom_item"] = cboProducto.SelectedItem.ToString(); detalles.Rows.Add(dr); grDetalles.DataSource = detalles; grDetalles.DataBind(); } catch (Exception ex) { lblMensajeDetalle.Text = "Error: " + ex.Message; PopDetalle.Show(); } }
protected void btnAgregar_Click(object sender, EventArgs e) { cboProducto.SelectedIndex = 0; txtCantidad.Text = String.Empty; lblMensajeDetalle.Text = String.Empty; PopDetalle.Show(); }
protected void grDetalles_RowCommand(object sender, GridViewCommandEventArgs e) { try { // Obtenemos el indice de la fila seleccionada int indicefila = Convert.ToInt16(e.CommandArgument); // Si se pulso en el boton eliminar , eliminamos el detalle de memoria if (e.CommandName == "Eliminar") { detalles = (DataTable)Session["Detalles"]; detalles.Rows.RemoveAt(indicefila); grDetalles.DataSource = detalles; grDetalles.DataBind(); Session["Detalles"] = detalles; } } catch (Exception ex) { lblMensajeDetalle.Text = "Error :" + ex.Message; PopDetalle.Show(); } }