An object reference is required for the non-static field, method, or property in a windows form
<p>I know this error is extremely common. I have read on it and seen the other questions posed here, however I simply cannot figure out how to fix my particular problem.</p>

<p>I have a windows form with two comboboxes on it and other controls that are irrelevant to the case at hand. I have set up a method for when the first combobox changes and I want to change the list of items in the second one by some measure.</p>

<pre><code>    private void ComboBox_SelectedIndexChanged(object sender, EventArgs e)
    {
        ComboBox cb = sender as ComboBox;
        String Name = cb.Name;
        Name.Replace("Rank", "Target");
        cb = Form1.ControlCollection.Find(Name, false);
        for (int i = cb.SelectedIndex; i &lt; Ranks.Count-1; i++)
        {

        }
    }
</code></pre>

<p>"Form1.ControlCollection.Find" raises the error in the title. Since I cannot make a new instance of Form1 (as I believe that will not reference my existing winform but make a new one?) and making the ComboBox_Selected... method static does not help at all, I don't know what to do.</p>

<p>I did try</p>

<pre><code>Form1 frm = new Form1();
frm.ControlCollection.Find(Name, false);
</code></pre>

<p>and</p>

<pre><code>this.ControlCollection.Find(Name, false);
</code></pre>

<p>but the error did not go away</p>