c# Progress Bar based on event and delgate not working
<p>I need help in troubleshooting my code.  I have 3 classes.  Class 1 is a WinForm with Progressbar on it.  Class 2 is where the event is fired.  Class 3 is the EventArg for the progress.   The program compiles with out any errors, but when I click the button, the progress bar does not move!.  </p>

<pre><code>namespace WindowsFormsApplication1
{

class Class1
{
    //Declaring a delegate
    public delegate void StatusUpdateHandler(object sender, ProgressEventArgs e);

    //Declaraing an event
    public event StatusUpdateHandler OnUpdateStatus;

    public int recno;

    public void Func()
    {
        //time consuming code
        for (recno = 0; recno &lt;= 100; recno++)
        {
            UpdateStatus(recno);
        }

    }

    public void UpdateStatus(int recno)
   {    
        // Make sure someone is listening to event         
        if (OnUpdateStatus == null) return;          &lt;--------------OnUpdateStatus   is     always null not sure why?
        ProgressEventArgs args = new ProgressEventArgs(recno);         
        OnUpdateStatus(this, args);     
    } 
}
}


namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{

    private Class1 testClass;

    public Form1()
    {
        InitializeComponent();

        testClass = new Class1();
        testClass.OnUpdateStatus += new Class1.StatusUpdateHandler(UpdateStatus);
    }


    public void button1_Click(object sender, EventArgs e)
    {

        Class1 c = new Class1();
        c.Func();

    }


    public void UpdateStatus(object sender, ProgressEventArgs e)

    {
        progressBar1.Minimum = 0;
        progressBar1.Maximum = 100;
        progressBar1.Value = e.Recno;

    }
}
}



namespace WindowsFormsApplication1
{
public class ProgressEventArgs : EventArgs
{

    public  int Recno { get; private set; }

    public ProgressEventArgs(int recno)
    {
        Recno = recno;
    }

}
}
</code></pre>
