protected void combobox_SelectedIndexChanged(object sender, EventArgs e) { try { foreach (GridViewRow gvRow in gvMateriales.Rows) { Int32 rowIndex = gvRow.RowIndex; Int32 idMaterial = (Int32)gvMateriales.DataKeys[rowIndex]["IdMaterial"]; TextBox txtCantidad = (TextBox)gvRow.Cells[0].FindControl("txtCantidad"); DataRow Dr = DtMateriales.Select("IdMaterial=" + idMaterial.ToString())[0]; Dr[4] = txtCantidad.Text; } if (DtMateriales.Select("IdMaterial=" + combobox.SelectedValue).Count() == 0) { DataTable Ds = AtencionPeluqueriaBuss.BuscarMaterialesxCodigo(Int32.Parse(combobox.SelectedValue), Int32.Parse(idAlmacen.Value)); DataRow Dr = DtMateriales.NewRow(); if (Ds.Rows.Count > 0) { Dr[0] = Ds.Rows[0]["IdMaterial"].ToString(); Dr[1] = Ds.Rows[0]["material"].ToString(); Dr[2] = Ds.Rows[0]["descripcion"].ToString(); Dr[3] = Ds.Rows[0]["umedida"].ToString(); Dr[4] = Ds.Rows[0]["Cantidad"].ToString(); Dr[5] = Ds.Rows[0]["Precio"].ToString(); Dr[6] = "0"; DtMateriales.Rows.Add(Dr); } gvMateriales.DataSource = DtMateriales; gvMateriales.DataBind(); } else { lblModalValTitle.Text = "Error"; lblVal.Text = "El material ya fue ingresado;"; lblVal.ForeColor = System.Drawing.Color.Red; ScriptManager.RegisterStartupScript(Page, Page.GetType(), "myModalVal", "$('#myModalVal').modal();", true); upModalVal.Update(); } combobox.SelectedValue = "0"; } catch (Exception ex) { msgError.Clear(); msgError.AppendLine("Fecha:" + DateTime.Now.ToString()); msgError.AppendLine("Descripción:" + ex.Message); msgError.AppendLine("Detalle:" + ex.StackTrace); log.Error(msgError.ToString()); } }