Bindbares Attribut
Das Attribut [bindable] gibt an, dass die -Eigenschaft die Datenbindung unterstützt.
[
interface-attribute-list
]
interface | dispinterface interface-name
{
[bindable[, attribute-list]] returntype function-name(params)
}
Parameter
-
interface-attribute-list
-
Gibt eine Liste von null oder mehr IDL-Attributen an, die für die Schnittstelle als Ganzes gelten. Wenn zwei oder mehr Schnittstellenattribute vorhanden sind, müssen sie durch Kommas getrennt werden.
-
Schnittstellenname
-
Gibt den Namen der Schnittstelle an.
-
attribut-list
-
Gibt null oder mehr Attribute an, die für den Funktionsprototyp für eine Eigenschaft oder methode in einer Schnittstelle oder Dispinterface gelten. Die folgenden Attribute sind gültig: [helpstring], [helpcontext], [string], [defaultbind], [displaybind], [immediatebind], [propget], [propput], [propputref] und [vararg]. Wenn vararg angegeben ist, muss der letzte Parameter ein sicheres Array vom Typ VARIANT sein. Trennen Sie mehrere Attribute durch Kommas.
-
returntype
-
Gibt den Rückgabetyp der Funktion an.
-
Funktionsname
-
Gibt den Namen der Funktion an, auf die das Attribut [bindable] angewendet wird.
-
params
-
Funktionsparameterliste.
Bemerkungen
Durch die Unterstützung der Datenbindung ermöglicht das Attribut [bindable] die Benachrichtigung des Clients, wenn sich der Wert einer Eigenschaft geändert hat. (Wenn Sie möchten, dass der Client über bevorstehende Änderungen an einer Eigenschaft benachrichtigt wird, verwenden Sie das Attribut [requestedit] .)
Da sich das [bindbare] Attribut auf die Eigenschaft als Ganzes bezieht, muss es überall dort angegeben werden, wo die Eigenschaft definiert ist. Daher müssen Sie das Attribut sowohl für die Eigenschaftszugriffsfunktion als auch für die Eigenschaftseinstellungsfunktion angeben.
Flags
FUNCFLAG_FBINDABLE, VARFLAG_FBINDABLE
Beispiele
[
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);
}
Weitere Informationen