Originariamente inviato da alka
Non penso sia un problema di "refresh" e "update". Controlla il codice con cui viene effettuato il caricamento degli elementi e che deve essere nuovamente eseguito (avendo cura, ovviamente, di ricaricare anche tali oggetti con il record aggiuntivo) da invocare quando il form di inserimento/modifica del record è stato chiuso ed ha compiuto il proprio lavoro.

Ciao!
uhm.. ma mi sà che è quello che faccio:
Codice di inserimento nuovo record (form 2)
codice:
OleDbConnection 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();
                cn.Close();
                frmKeyValue = new FormKeyValue();
                frmKeyValue.populateList();
                this.Close();
Codice prelevamento record (form 1)
codice:
public void populateList() 
        {
            this.Cursor = Cursors.WaitCursor;
            lvItems.Enabled = false;
            btnNew.Enabled = false;
            btnEdit.Enabled = false;
            btnSelect.Enabled = false;
            btnDelete.Enabled = false;
            btnPrint.Enabled = false;
            btnExit.Enabled = false;
            Application.DoEvents();

            cn = new OleDbConnection(ConfigurationManager.ConnectionStrings["localDb"].ConnectionString);
            cmd = new OleDbCommand("Select idNazioni,codnazione,descnazione from nazioni order by codnazione asc", cn);
            cn.Open();
            Application.DoEvents();
            reader = cmd.ExecuteReader();
            while (reader.Read())
            {
                ListViewItem lvItem = new ListViewItem(reader[1].ToString());
                lvItem.SubItems.Add(reader[2].ToString());
                lvItems.Items.Add(lvItem);

            }
            cn.Close();
            cn.Dispose();
            this.Cursor = Cursors.Default;
            lvItems.Enabled = true;
            btnNew.Enabled = true;
            btnEdit.Enabled = true;
            btnSelect.Enabled = true;
            btnDelete.Enabled = true;
            btnPrint.Enabled = true;
            btnExit.Enabled = true;
            Application.DoEvents();
           
        }
dove sbaglio?