bindable

[interface-attribute-list] interface | dispinterface interface-name

[bindable
[, attribute-list]] returntype function-name(params)
}

attribute-list

Specifies zero or more attributes that apply to the function prototype for a property or a method in an interface or dispinterface. The following attributes are accepted: helpstring, helpcontext, string, defaultbind, displaybind, immediatebind, propget, propput, propputref, and vararg. If vararg is specified, the last parameter must be a safe array of VARIANT type. Separate multiple attributes with commas.

 

Example

[uuid(. . .)]dispinterface MyObject

properties:

methods:

 [id(1), propget, bindable, defaultbind, displaybind]

        long x();

 [id(1), propput, bindable, defaultbind, displaybind]

        void x(long rhs);

}

 

Remarks

The bindable attribute indicates that the property supports data binding. This allows the client to be notified whenever a property has changed value. (If you want the client to be notified of impending changes to a property, use the requesteditDQJDGL attribute.)

Because the bindable attribute refers to the property as a whole, it must be specified wherever the property is defined. Therefore, you need to specify the attribute on both the property-accessing function and the property-setting function.

Flags

FUNCFLAG_FBINDABLE, VARFLAG_FBINDABLE

See Also

defaultbind, displaybind, ODL File Syntax, ODL File Example, Generating a Type Library With MIDL, TYPEFLAGS, dispinterface