Personally, I always try to prefix booleans with something that adds a little more meaning (is, has, can, etc.). My use comes from the following Microsoft recommendations:
Indicate the name Boolean properties with an affirmative phrase (CanSeek instead of CantSeek). Optionally, you can also prefix Boolean properties with Is, Maybe, or it has, but only where it adds a value.
MSDN - type member names
I do not think this has always been the case. It is not always so. These methods are for .NET 2.0. Before that, everything was honest. However, clearing these names in new versions of the Framework will lead to all kinds of headaches (therefore, some of the Framework code use the convention, and some do not).
It definitely makes things more readable, though. Even using the example from your question. Which would you prefer?
or
// definitely a true/false value myTab.IsTabStop
Justin niessner
source share