Nice workaround, but a little on the messy side when you consider an application would then need the transparency over the top of EVERY control that could get disabled - not nice, and tracking their existence then becomes a problem 'cos you can't see them!
I agree that the windows definition of "disabled" is "it is unable to receive the input focus", but that doesn't necessarily mean unable to react to input (depends on the definition of "focus" here. Pedantic, but true)
Let's take a step back and look at the solution methodology. Is it easier to check for a disabled state when using, say the mouse up event, or is it easier to come up with a whole new programming methodology creating new controls, or using the windows SDK.
Personally, I liked the ide
a that a disabled control could generate an event on the mouse up/down so you could allow users the ability to logon to a system to gain the extra functionality (such as coupling with DSC's user handling which can automatically enable / disable controls) or even simply popup a message to say - you don't have access. As long as you know about it doing this, it's easy to handle for.
Please don't take the tools away that make life easier.
S.
// it takes almost no time to rate an answer