private void dataGridViewDetalleIngStock_KeyDown(object sender, KeyEventArgs e) { try { var senderGrid = (DataGridView)sender; if (e.KeyCode == Keys.Enter && senderGrid.Columns[this.dataGridViewDetalleIngStock.CurrentCell.ColumnIndex].Index == (int)Col_Detalle.BUSCADOR && this.dataGridViewDetalleIngStock.CurrentCell.RowIndex >= 0) { Frm_ProdIngresoStock _prod = new Frm_ProdIngresoStock(); _prod.Articulos = _articulosItem; //le paso la colección de artículos //paso los rubros _prod.Rubros = _rubrositem; _indexSeleccionado = this.dataGridViewDetalleIngStock.CurrentCell.RowIndex; //establezco el index _prod.MdiParent = this.MdiParent; // esto porque estoy utiliando MDI _prod.Opener = this; // es para el formulario hijo _prod.Show(); _prod.StartPosition = FormStartPosition.CenterScreen; } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void dataGridViewDetalleIngStock_CellContentClick(object sender, DataGridViewCellEventArgs e) { try { //var senderGrid = (DataGridView)sender; //if (senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn && e.RowIndex >= 0) if (e.ColumnIndex == (int)Col_Detalle.BUSCADOR && e.RowIndex >= 0) { Frm_ProdIngresoStock _prod = new Frm_ProdIngresoStock(); _prod.Articulos = _articulosItem; //le paso la colección de artículos //paso los rubros _prod.Rubros = _rubrositem; _indexSeleccionado = e.RowIndex; //establezco el index _prod.MdiParent = this.MdiParent; // esto porque estoy utiliando MDI _prod.Opener = this; // es para el formulario hijo _prod.Show(); _prod.StartPosition = FormStartPosition.CenterScreen; } if (e.ColumnIndex == (int)Col_Detalle.VTOS && e.RowIndex >= 0) { DataGridViewDisableButtonCell buttonCell = (DataGridViewDisableButtonCell)dataGridViewDetalleIngStock.Rows[e.RowIndex].Cells[(int)Col_Detalle.VTOS]; if (!buttonCell.Enabled) { MessageBox.Show("Este artículo no tiene el atributo Trabaja con Fecha de Vto.", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; //SI EL BUTTON TIENE ENEBLE = FALSE NO PERMITO MOSTRAR EL OTRO FORMULARIO } Frm_Vtos _vto = new Frm_Vtos(); string _art = dataGridViewDetalleIngStock.Rows[e.RowIndex].Cells[(int)Col_Detalle.CODIGO].Value.ToString(); string _descripArt = dataGridViewDetalleIngStock.Rows[e.RowIndex].Cells[(int)Col_Detalle.DESCRIPCION].Value.ToString(); //RECUPERO LA LISTA DE VTOS DE ESTE ARTICULO PARA PASARLO AL FORMULARIO DE VTOS List <Entities.Tables.STKVENCIMIENTO> _listObj = _ArtsVtos.FindAll(item => item.ARTICULO_ID == _art); //ACA BORRAR DE LA LISTA ESTE ARTICULO CON TODOS SUS VTOS. PORQUE CARGO TODO DE NUEVO CADA VEZ QUE SE EDITA... //ESTO PORQUE PUEDE ESTAR AGREGANDO O ELIMINANDO VTOS. _ArtsVtos.RemoveAll(item => item.ARTICULO_ID == _art); //PASO LA LISTA AL FORMULARIO DE VTOS _vto.ListVto = _listObj; Entities.Tables.STKVENCIMIENTO _newVto; _vto.CodigoArticuloVto = _art; _vto.DescripArticuloVto = _descripArt; decimal _cantIngresada = 0; int _cantidadFechaVto = 0; if (_vto.ShowDialog() == DialogResult.OK) { foreach (var item in _vto.ListVto) { _newVto = new Entities.Tables.STKVENCIMIENTO(); _newVto.ARTICULO_ID = item.ARTICULO_ID; _newVto.CANTIDAD = item.CANTIDAD; _newVto.VTO = item.VTO; //VOY SUMANDO LAS CANTIDADES _cantIngresada += item.CANTIDAD; _cantidadFechaVto++; //ME DICE CUANTAS FECHAS DE VTOS DISTINTAS TENGO, ES PARA SABER CUANTAS ETIQUETAS DEBO IMPRIMIR _ArtsVtos.Add(_newVto); } //COLOCO LA CANTIDAD TOTAL RECIBIDA DE ESTE ARTICULO //NO COLOCO LA CANTIDAD RECIBIDA PORQUE NO ME HABILITA EL PROXIMO RENGON..... // dataGridViewDetalleIngStock.Rows[e.RowIndex].Cells[(int)Col_Detalle.CANTIDAD].Value = _cantIngresada.ToString().Replace(",", "."); } } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }