Como usar BackgroundWorker em c #

Como usar o BackgroundWorker em C #?

Na verdade eu estou realizando uma operação de preenchimento de um PDF-Form a partir do método chamadofill(). Demora mais tempo para mostrar o resultado em pdfviewer, então eu decidi mostrar uma 'imagem de processamento' usando um backgroundworker, e tentei usá-la, mas não consegui

aqui está meu trecho de código:

        private void bgwLoadFile_DoWork(object sender, DoWorkEventArgs e)
        {
            this.Invoke((MethodInvoker)delegate()
           {
               ???? 
           }); 
        }

        private void bgwLoadFile_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
          if (e.Cancelled == true)
          {
          }
          else if (e.Error != null)
          {
          }
          else
          {
           picLoading.SendToBack();
          }
       }

O método de preenchimento é chamado quando o botãoPREENCHER foi clicado

private void btnFill_Click(object sender, EventArgs e)
        {
            if (btnFill.Text == "Fill")
            { 
                bgwLoadFile.RunWorkerAsync();
                picloading.BringToFront();

                Fill();
            }

declaração wat deve eu preciso adicionar no método DoWork, se eu tentei adicionar preenchimento FILL () é chamado duas vezes ...

Alguém pode me ajudar

obrigado

questionAnswers(2)

yourAnswerToTheQuestion