atributo vinculável
O atributo [associável] indica que a propriedade dá suporte à associação de dados.
[
interface-attribute-list
]
interface | dispinterface interface-name
{
[bindable[, attribute-list]] returntype function-name(params)
}
Parâmetros
-
interface-attribute-list
-
Especifica uma lista de zero ou mais atributos IDL que se aplicam à interface como um todo. Quando dois ou mais atributos de interface estão presentes, eles devem ser separados por vírgulas.
-
interface-name
-
Especifica o nome da interface.
-
attribute-list
-
Especifica zero ou mais atributos que se aplicam ao protótipo de função para uma propriedade ou um método em uma interface ou dispinterface. Os seguintes atributos são válidos: [helpstring], [helpcontext], [string], [defaultbind], [displaybind], [immediatebind], [propget], [propput], [propputref], e [vararg]. Se vararg for especificado, o último parâmetro deverá ser uma matriz segura do tipo VARIANT. Separe vários atributos com vírgulas.
-
Returntype
-
Especifica o tipo de retorno da função.
-
function-name
-
Especifica o nome da função à qual o atributo [associável] será aplicado.
-
params
-
Lista de parâmetros de função.
Comentários
Ao dar suporte à associação de dados, o atributo [associável] permite que o cliente seja notificado sempre que uma propriedade tiver alterado o valor. (Se você quiser que o cliente seja notificado sobre alterações iminentes em uma propriedade, use o atributo [requestedit] .)
Como o atributo [associável] se refere à propriedade como um todo, ele deve ser especificado onde quer que a propriedade seja definida. Portanto, você precisa especificar o atributo na função de acesso à propriedade e na função de configuração de propriedade.
Flags
FUNCFLAG_FBINDABLE, VARFLAG_FBINDABLE
Exemplos
[
uuid(1e196b20-1f3c-1069-996b-00dd010fe676)
]
dispinterface MyObject
{
properties:
methods:
[id(1), propget, bindable, defaultbind, displaybind] long x();
[id(1), propput, bindable,
defaultbind, displaybind] HRESULT x(long rhs);
}
Confira também