private void BackgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
 {
     bpf.DialogResult = DialogResult.OK;
     bpf.Close();
     bpf.Dispose();
     bpf = null;
 }
 private void BenchmarkForm_Disposed(object sender, EventArgs e)
 {
     if (bpf != null)
     {
         bpf.Close();
         bpf.Dispose();
         bpf = null;
     }
 }
        private void btnRun_Click(object sender, EventArgs e)
        {
            btnCopyToClipboard.Enabled = false;
            using (bpf = new BenchmarkProgressForm())
            {
                bpf.bf = this;
                switch (bpf.ShowDialog())
                {
                case DialogResult.OK:
                    ShowResults();
                    btnCopyToClipboard.Enabled = (dgvResults.RowCount > 0);
                    break;

                case DialogResult.Cancel:
                    break;
                }
            }
        }