For additional information about VARFLAGS, see the MSDN Library.
The common language runtime throws an exception when a COM method in native code returns an HRESULT. For more information, see How to: Map HRESULTs and Exceptions.
The variable supports data binding.
The variable is the single property that best represents the object. Only one variable in type information can have this attribute.
Permits an optimization in which the compiler looks for a member named "xyz" on the type of "abc". If such a member is found and is flagged as an accessor function for an element of the default collection, then a call is generated to that member function. Permitted on members in dispinterfaces and interfaces; not permitted on modules.
The variable is displayed to the user as bindable. System.Runtime.InteropServices.VARFLAGS.VARFLAG_FBINDABLE must also be set.
The variable should not be displayed to the user in a browser, although it exists and is bindable.
The variable is mapped as individual bindable properties.
The variable appears in an object browser, but not in a properties browser.
Assignment to the variable should not be allowed.
Tags the interface as having default behaviors.
When set, any attempt to directly change the property results in a call to IPropertyNotifySink::OnRequestEdit. The implementation of OnRequestEdit determines if the change is accepted.
The variable should not be accessible from macro languages. This flag is intended for system-level variables or variables that you do not want type browsers to display.
The variable returns an object that is a source of events.
The variable is the default display in the user interface.