pasek postępu nie postępuje

Mam program, który aktualizuje tabelę w sqlserver, mam formularz, który chcę pokazać postęp, pasek postępu zwiększa się, ale nie jest wyświetlany. czy muszę do tego użyć pracownika działającego w tle? przykład tego, co robię

public void updateTable(string tableName)
{
  // con is an instance of my form to access progressbar
  con.progressBar1.Minimum = 1;
  con.progressBar1.Step = 1;
  string dbQuery = "select summet from someting"

  con.progressBar1.Maximum = address.Tables[0].Rows.Count;
  MessageBox.Show("progress bar max " + con.progressBar1.Maximum);

   foreach (DataRow LonLat in address.Tables[0].Rows)
   {
       con.progressBar1.PerformStep();
       MessageBox.Show(con.progressBar1.Value.ToString()); // this is incrementing
       //plus updating table 

   }


}

questionAnswers(4)

yourAnswerToTheQuestion