private void spese_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { try { if (e.RowIndex < 0 || e.ColumnIndex < 0) { return; } DataGridView dgv = (DataGridView)sender; tipo_spesa s = (tipo_spesa)dgv.Rows[e.RowIndex].DataBoundItem; string cn = dgv.Columns[e.ColumnIndex].Name; if (cn == "azione") { if (s.cc_scontrini == 0) { e.Value = Properties.Resources.delete_24; dgv.Rows[e.RowIndex].Cells[e.ColumnIndex].Tag = "del"; } else { e.Value = Properties.Resources.exchange_24; dgv.Rows[e.RowIndex].Cells[e.ColumnIndex].Tag = "exc"; } } if (!s.id.HasValue) { e.CellStyle.BackColor = style.color_grid_add_row; } } catch { } }
private void spese_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) { try { if (e.RowIndex >= 0 && e.ColumnIndex >= 0) { DataGridView dgv = (DataGridView)sender; if (dgv.Columns[e.ColumnIndex] is DataGridViewImageColumn) { return; } tipo_spesa t = (tipo_spesa)dgv.Rows[e.RowIndex].DataBoundItem; if (dgv.Columns[e.ColumnIndex].Name == "title") { string val = fld.get_str(e.FormattedValue); if (val == "") { throw new Exception("Devi specificare un tipo spesa!"); } else if (tipo_spesa.al.there_tipo_spesa(logged.utente(), val, t.id)) { throw new Exception($"C'è già un tipo spesa '{val}'"); } } } } catch (Exception ex) { e.Cancel = true; main.set_status_err(ex.Message); } }
private void dgv_spese_CellEndEdit(object sender, DataGridViewCellEventArgs e) { try { if (e.RowIndex >= 0 && e.ColumnIndex >= 0) { DataGridView dgv = (DataGridView)sender; tipo_spesa t = (tipo_spesa)dgv.Rows[e.RowIndex].DataBoundItem; t.save(); logged.data().reload_tipi_spesa(); dgv.Refresh(); } } catch { } }
private void dgv_spese_KeyDown(object sender, KeyEventArgs e) { try { if (e.KeyCode == Keys.Delete) { DataGridView dgv = (DataGridView)sender; DataGridViewColumn c = dgv.Columns[dgv.CurrentCell.ColumnIndex]; if (c.Name == "note" && !dgv.CurrentCell.IsInEditMode) { dgv.CurrentCell.Value = null; tipo_spesa s = (tipo_spesa)dgv.Rows[dgv.CurrentCell.RowIndex].DataBoundItem; s.save(); } } } catch (Exception ex) { main.set_status_err(ex); } }
protected void load_scontrini() { utente_filtri uf = sel_vista(); tipo_spesa ts = sel_tipo_spesa(); if (ts.id.HasValue) { uf = null; cmb_vista.Visible = false; } else { cmb_vista.Visible = true; } dgv_scontrini.DataSource = new BindingSource() { DataSource = scontrino.al.load_scontrini(logged.utente(), uf, ts) }; dgv_scontrini.Columns["data"].HeaderCell.SortGlyphDirection = SortOrder.Descending; refresh_footer(); }
private void dgv_spese_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e) { try { if (e.ColumnIndex < 0) { return; } DataGridView dgv = (DataGridView)sender; string cn = dgv.Columns[e.ColumnIndex].Name; if (e.RowIndex < 0) { if (dgv.IsCurrentCellInEditMode || cn == "azione" || cn == "vai") { return; } if (_sc == cn) { _so = _so == SortOrder.Descending ? SortOrder.Ascending : SortOrder.Descending; } else { _sc = cn; _so = SortOrder.Ascending; } load_tipi_spesa(); return; } if (cn == "azione") { string tag = dgv.Rows[e.RowIndex].Cells[e.ColumnIndex].Tag.ToString(); tipo_spesa s = (tipo_spesa)dgv.Rows[e.RowIndex].DataBoundItem; if (!s.id.HasValue) { if (tag == "del") { dgv.CancelEdit(); dgv.Rows.Remove(dgv.Rows[e.RowIndex]); } return; } if (tag == "exc") { if (main.popup("SPOSTA SCONTRINI", $"Cambia gli scontrini da '{s.title}' a:" , ((List <tipo_spesa>)((BindingSource)dgv.DataSource).DataSource).Where(x => x.id.HasValue && x.id.Value != s.id.Value) .Select(x => new frm_popup.item(x.id.Value, x.title)).ToList(), out frm_popup.item choosed)) { scontrino.dl.change_tipo(logged.utente(), s.id.Value, choosed.id); load_tipi_spesa(true); invalidate_views(); dgv.Refresh(); } } else if (tag == "del") { s.delete(); logged.data().reload_tipi_spesa(); dgv.CancelEdit(); dgv.Rows.Remove(dgv.Rows[e.RowIndex]); } } else if (cn == "vai") { main.show_view(typeof(vw_scontrini)); // !ocio! //((vw_scontrini)main.active_view).set_tipo_spesa( // fld.get_str(dgv.Rows[e.RowIndex].Cells["title"].Value)); } } catch (Exception ex) { string m = ex.Message; } }