The way you do with any app using it.
Create the instance, handle the events, and start it:
BackgroundWorker work= new BackgroundWorker { WorkerReportsProgress = true };
work.ProgressChanged += Worker_ProgressChanged;
work.DoWork += Worker_DoWork;
work.RunWorkerCompleted += Worker_Completed;
work.RunWorkerAsync(myParameterIfAny);
And then write the event handlers:
private void Worker_DoWork(object sender, DoWorkEventArgs e)
{
...
}
private void Worker_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
...
}
private void Worker_Completed(object sender, EventArgs e)
{
...
}