using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Fuel01 { public partial class f_etape : Form { DataSet1.tb_etapeDataTable tb_etape = new DataSet1.tb_etapeDataTable(); private bool hasChanged = false; public f_etape() { InitializeComponent(); } private void f_etape_Load(object sender, EventArgs e) { Program.subfolder = Program.folder + @"\" + Program.key_ope; if (!Directory.Exists(Program.subfolder)) { Directory.CreateDirectory(Program.subfolder); } else if (File.Exists(Program.subfolder + @"\station.json")) { tb_etape = DbUtil.LoadFromJson(Program.subfolder + @"\etape.json", tb_etape); } tb_etape.AcceptChanges(); tbetapeBindingSource.DataSource = tb_etape; tb_etape.tb_etapeRowChanged += tb_etape_tb_etapeRowChanged; if (Program.key_ope != null) this.Text = "Etapes " + Program.nom_ope; } void tb_etape_tb_etapeRowChanged(object sender, DataSet1.tb_etapeRowChangeEvent e) { hasChanged = true; } private void f_etape_FormClosing(object sender, FormClosingEventArgs e) { if (hasChanged) { DbUtil.SaveToJson(Program.subfolder + @"\etape.json", tb_etape); } } private void bt_Sup_Click(object sender, EventArgs e) { DataRowView myRow = tbetapeBindingSource.Current as DataRowView; if (myRow == null) return; string msg = string.Format("Etape {0} du {1}\nEtes-vous certain de vouloir supprimer ", myRow.Row["num_etp"].ToString(), myRow.Row["date_etp"].ToString()); string caption = "Suppression définitive"; if (MessageBox.Show(msg, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes) { DataSet1.tb_etapeRow etapeRow = tb_etape.FindByepr_etpnum_etp(myRow.Row["epr_etp"].ToString(), Convert.ToUInt16(myRow.Row["num_etp"].ToString())); if (etapeRow != null) tb_etape.Removetb_etapeRow(etapeRow); hasChanged = true; } } private void db_etape_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) { if (e.RowIndex > 0) if (db_etape.Rows[e.RowIndex - 1].Cells[0].Value == null) db_etape.Rows[e.RowIndex - 1].Cells[0].Value = Program.key_ope; else if (db_etape.Rows[e.RowIndex - 1].Cells[0].Value.ToString() != Program.key_ope) db_etape.Rows[e.RowIndex - 1].Cells[0].Value = Program.key_ope; } } }