public void saveData(FormSave formSave, Table table, Boolean status) { isSaveData = true; isReadData = false; this.formSave = formSave; backgroudWoker = new BackgroundWorker(); backgroudWoker.DoWork += new DoWorkEventHandler(readRecordsDoWork); backgroudWoker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(saveRunWorkerCompletedEventHandler); backgroudWoker.WorkerSupportsCancellation = true; var tableData = new Tuple <Table, Boolean>(table, status); backgroudWoker.RunWorkerAsync(tableData); formWait = new FormWait(); formWait.FormClosing += new FormClosingEventHandler(waitFormClosingEventHandler); formWait.ShowDialog(); }