Replace parent class event with my own
<p>I'd like to implement a new version of <code>TextBox</code>, let's call it <code>FunkyTextBox</code> that will raise <code>TextChanged</code> event only after every third text change.</p>

<p>If I only wanted to raise another event for this, let's call it <code>FunkyTextChanged</code>, the implementation is straightforward:</p>

<pre><code>class FunkyTextBox : TextBox
{
    int counter = 0;
    int MAX_CHANGES = 3;
    public event EventHandler FunkyTextChanged;

    public FunkyTextBox()
    {
        this.TextChanged += (s, e) =&gt;
        {
            if (++counter &lt; MAX_CHANGES)
                return;
            counter = 0;
            if (FunkyTextChanged != null)
                FunkyTextChanged(this, null);
        };
    }
}
</code></pre>

<p>But this approach has one disadvantage - user would assume to use <code>TextChanged</code>, which is the parent's version that is raised after single change and wouldn't think to subscribe to <code>FunkyTextChanged</code> event.</p>

<p>Is it possible to use <code>TextChanged</code> event for this? To somehow hide parent's TextChnaged from users of <code>FunkyTextBox</code> and replace it with its own? </p>
