private void chiudiFinestra(object sender, EventArgs e) { //alla chiusura finestra libera tutte le risorse allocate dalla classe database per permettere //l'accesso ad altre istanze della classe GestoreDatabase db.forceClose(); this.Close(); }
private void apply_Click(object sender, EventArgs e) { //operaz. db if (!db.aggiornaRigaMateria(idmateria, nomenuovo.Text)) { MessageBox.Show("Errore interno del database!", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error); } db.forceClose(); //libera le risorse per passarle al form padre this.Close(); //chiudi la finestra }
private void importaDatabaseToolStripMenuItem_Click(object sender, EventArgs e) { //blocca le operazioni sul db inswap = true; var res = importadb.ShowDialog(); if (res == DialogResult.OK) { //per l'importazione, chiudi tutte le connessioni della classe e... //...libera tutte le risorse ed il pool, per liberare il file dal processo db.forceClose(); //sovrascrivi il database con il file scelto dall'utente System.IO.File.Copy( importadb.FileName, db.getPercorsoFileDatabase(), true ); //ricarica la classe, fai le prove di init e ricarica la tabella db = new GestoreDatabase(); db.initDatabase(); //sblocca le operazioni sul db inswap = false; refresh(); tickEvent(true); } }
private void esci(object sender, EventArgs e) { db.forceClose(); //libera tutte le risorse per passare il libero controllo del file db al form padre this.Close(); //chiudi finestra }