Tabstop is just a bool, which tells the system that the user input focus can go to the control when he presses the TAB key: if it's true, the control is included in the "tabable" controls collection at the position indicated by the TabIndex property. Overriding it (which you can't do as it's not marked virtual, abstract, or override) wouldn't allow you to add and real functionality to the tab process. You can hide teh original implementation:
public new bool TabStop { get; set; }
Which would probably prevent the TAB key from ever being used to enter it, but that's about all.
If you want to modify TAB behaviour (and I really don't recommend it) you probably need to override
WndProc ProcessCmdKey in the parent container and filter out TAB yourself.
Ignore WndProc, you need ProcessCommandKey (my caffeine hadn;t kicked in fully last time):
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
Keys keyPressed = (Keys)(int)msg.WParam;
if (keyData == Keys.Tab)
{
Console.WriteLine("Tab!");
return true;
}
return base.ProcessCmdKey(ref msg, keyData);
}
But seriously: Faff with TAB functionality at your own risk! Users are used to it doing particular things, and you really don't want to subvert that or they will hate your app with a passion you will not believe...