Code Snippet
public partial class Form1 : Form
{
private FileFinder fileFinder;
private FileSaver fileSaver;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// initialize the fileFinder and fileSaver
fileFinder = new FileFinder();
fileSaver = new FileSaver(backgroundWorker1);
// hook up the event handler
fileFinder.FileFoundEvent += new FileFinder.FileFoundHandler(fileSaver.OnFileFound);
// initialize the Backgroundworker
backgroundWorker1.WorkerReportsProgress = true;
backgroundWorker1.DoWork += new DoWorkEventHandler(backgroundWorker1_DoWork);
backgroundWorker1.ProgressChanged += new ProgressChangedEventHandler(backgroundWorker1_ProgressChanged);
}
void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
textBox1.Text += "FileName: " + e.UserState.ToString() + "\r\n";
}
void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
fileFinder.BeginFindFiles();
}
private void startBackgroundWorkerButton_Click(object sender, EventArgs e)
{
backgroundWorker1.RunWorkerAsync();
}
}