una domanda.. mi stà capitando una cosa strana:
codice:
private void btnConfirm_Click(object sender, EventArgs e)
{
try
{
cn = new OleDbConnection(ConfigurationManager.ConnectionStrings["localDb"].ConnectionString);
OleDbCommand cmd = new OleDbCommand("INSERT INTO nazioni (codnazione,descnazione) VALUES (@codice,@descrizione)", cn);
cmd.Parameters.Add("@codice", OleDbType.VarChar, 3);
cmd.Parameters.Add("@descrizione", OleDbType.VarChar, 50);
cmd.Parameters["@codice"].Value = txtCod.Text;
cmd.Parameters["@descrizione"].Value = txtDesc.Text;
cn.Open();
cmd.ExecuteNonQuery();
((FormKeyValue)frmKeyValue).lvItems.Items.Clear();
((FormKeyValue)frmKeyValue).populateList();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
}
finally
{
if (cn.State == ConnectionState.Open)
{
cn.Close();
}
this.Close();
}
}
se ometto il blocco finally chiudendo la connessione e il form appena dopo populateList() tutto funziona normalmente (il listview del form principale si aggiorna correttamente con il record appena inserito) mentre se lascio come ho appena scritto, il listview non si aggiorna
secondo te perchè?