Previous | Index | Next 

[HOWTO] Define a more reliable Ambient.UserMode property

We have found that the the Ambient.UserMode property may mistakenly return the value True even if the UserControl is currently in design-mode. This behavior is a consequence of what .NET considers as “design-time” and in fact it is an issue that also affects developers who author .NET custom controls.

The VB6Utils class exposes a property named IsDesignMode, which returns True when the control is in design-time mode and is more reliable than the Ambient.UserMode property. Because the two properties have an opposite meaning, you have to prefix a Not operator when performing a global search-and-replace:

     '## project:PostProcess "\bAmbient\.UserMode", "(Not VB6Utils.IsDesignMode)"

 

Previous | Index | Next