Why should our eventhandler or member variables are declared protected in asp.net codebehind
<p>Why should our eventhandler or member variables are declared protected in asp.net codebehind?</p>

<p>This works.</p>

<pre><code>protected void btnSubmit_Click(object sender, EventArgs e)
{
    if (rdlOther.Checked)
        pnlOther.Visible = true;
    else
        pnlOther.Visible = false;
}
</code></pre>

<p>But this not,</p>

<pre><code>private void btnSubmit_Click(object sender, EventArgs e)
{
    if (rdlOther.Checked)
        pnlOther.Visible = true;
    else
        pnlOther.Visible = false;
}
</code></pre>
