Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
Ondersteunt de implementatie van persistentie voor uw OLE-besturingselementen.
Syntaxis
class AFX_NOVTABLE CPropExchange
Leden
Openbare methoden
| Naam | Description |
|---|---|
| CPropExchange::ExchangeBlobProp | Hiermee wordt een blob-eigenschap (binary large object) uitgewisseld. |
| CPropExchange::ExchangeFontProp | Een lettertype-eigenschap uitwisselen. |
| CPropExchange::ExchangePersistentProp | Wisselt een eigenschap uit tussen een besturingselement en een bestand. |
| CPropExchange::ExchangeProp | Wisselt eigenschappen uit van elk ingebouwd type. |
| CPropExchange::ExchangeVersion | Hiermee wordt het versienummer van een OLE-besturingselement uitgewisseld. |
| CPropExchange::GetVersion | Hiermee wordt het versienummer van een OLE-besturingselement opgehaald. |
| CPropExchange::IsAsynchronous | Bepaalt of eigenschapsuitwisseling asynchroon wordt uitgevoerd. |
| CPropExchange::IsLoading | Hiermee wordt aangegeven of eigenschappen in het besturingselement worden geladen of worden opgeslagen. |
Opmerkingen
CPropExchange heeft geen basisklasse.
Hiermee stelt u de context en richting van een uitwisseling van eigenschappen vast.
Persistentie is de uitwisseling van de statusinformatie van het besturingselement, meestal vertegenwoordigd door de eigenschappen ervan, tussen het besturingselement zelf en een medium.
Het framework bouwt een object dat is afgeleid van CPropExchange wanneer er een melding wordt ontvangen dat de eigenschappen van een OLE-besturingselement moeten worden geladen van of moeten worden opgeslagen in permanente opslag.
Het framework geeft een aanwijzer door aan dit CPropExchange object door aan de functie van DoPropExchange uw besturingselement. Als u een wizard hebt gebruikt om de startersbestanden voor uw besturingselement te maken, worden de functie-aanroepen COleControl::DoPropExchangevan DoPropExchange uw besturingselement gebruikt. De basisklasseversie wisselt de aandeleneigenschappen van het besturingselement in; u de versie van uw afgeleide klasse wijzigt om eigenschappen uit te wisselen die u aan uw besturingselement hebt toegevoegd.
CPropExchange kan worden gebruikt om de eigenschappen van een besturingselement te serialiseren of de eigenschappen van een besturingselement te initialiseren bij het laden of maken van een besturingselement. De ExchangeProp functies en ExchangeFontProp leden van CPropExchange deze functies kunnen eigenschappen opslaan en laden vanaf verschillende media.
Zie het artikel MFC ActiveX Controls: Property Pages voor meer informatie over het gebruikCPropExchange.
Overnamehiërarchie
CPropExchange
Requirements
Koptekst: afxctl.h
CPropExchange::ExchangeBlobProp
Hiermee serialiseert u een eigenschap waarin binaire grote objectgegevens (BLOB) worden opgeslagen.
virtual BOOL ExchangeBlobProp(
LPCTSTR pszPropName,
HGLOBAL* phBlob,
HGLOBAL hBlobDefault = NULL) = 0;
Parameterwaarden
pszPropName
De naam van de woning die wordt uitgewisseld.
phBlob
Aanwijzer naar een variabele die verwijst naar de locatie waar de eigenschap wordt opgeslagen (variabele is doorgaans lid van uw klasse).
hBlobDefault
Standaardwaarde voor de eigenschap.
Retourwaarde
Niet-nul als de uitwisseling is geslaagd; 0 indien mislukt.
Opmerkingen
De waarde van de eigenschap wordt gelezen van of naar, indien van toepassing, de variabele waarnaar wordt verwezen door phBlob. Als hBlobDefault is opgegeven, wordt deze gebruikt als de standaardwaarde van de eigenschap. Deze waarde wordt gebruikt als de serialisatie van het besturingselement om welke reden dan ook mislukt.
De functies CArchivePropExchange::ExchangeBlobProp, CResetPropExchange::ExchangeBlobPropen CPropsetPropExchange::ExchangeBlobProp overschrijven deze pure virtuele functie.
CPropExchange::ExchangeFontProp
Hiermee wordt een lettertype-eigenschap uitgewisseld tussen een opslagmedium en het besturingselement.
virtual BOOL ExchangeFontProp(
LPCTSTR pszPropName,
CFontHolder& font,
const FONTDESC* pFontDesc,
LPFONTDISP pFontDispAmbient) = 0;
Parameterwaarden
pszPropName
De naam van de woning die wordt uitgewisseld.
Lettertype
Een verwijzing naar een CFontHolder-object dat de lettertype-eigenschap bevat.
pFontDesc
Een aanwijzer naar een FONTDESC-structuur met waarden voor het initialiseren van de standaardstatus van de lettertype-eigenschap wanneer pFontDispAmbient NULL is.
pFontDispAmbient
Een aanwijzer naar de IFontDisp interface van een lettertype dat moet worden gebruikt voor het initialiseren van de standaardstatus van de lettertype-eigenschap.
Retourwaarde
Niet-nul als de uitwisseling is geslaagd; 0 indien mislukt.
Opmerkingen
Als de lettertype-eigenschap van het medium naar het besturingselement wordt geladen, worden de kenmerken van het lettertype opgehaald uit het medium en wordt het object waarnaar wordt verwezen door het CFontHolderlettertype geïnitialiseerd. Als de lettertype-eigenschap wordt opgeslagen, worden de kenmerken in het lettertypeobject naar het medium geschreven.
De functies CArchivePropExchange::ExchangeFontProp, CResetPropExchange::ExchangeFontPropen CPropsetPropExchange::ExchangeFontProp overschrijven deze pure virtuele functie.
CPropExchange::ExchangePersistentProp
Hiermee wordt een eigenschap uitgewisseld tussen het besturingselement en een bestand.
virtual BOOL ExchangePersistentProp(
LPCTSTR pszPropName,
LPUNKNOWN* ppUnk,
REFIID iid,
LPUNKNOWN pUnkDefault) = 0;
Parameterwaarden
pszPropName
De naam van de woning die wordt uitgewisseld.
ppUnk
Een aanwijzer naar een variabele die een aanwijzer bevat naar de interface van IUnknown de eigenschap (deze variabele is doorgaans lid van uw klasse).
Iid
Interface-id van de interface op de eigenschap die door het besturingselement wordt gebruikt.
pUnkDefault
Standaardwaarde voor de eigenschap.
Retourwaarde
Niet-nul als de uitwisseling is geslaagd; 0 indien mislukt.
Opmerkingen
Als de eigenschap wordt geladen van het bestand naar het besturingselement, wordt de eigenschap gemaakt en geïnitialiseerd op basis van het bestand. Als de eigenschap wordt opgeslagen, wordt de waarde naar het bestand geschreven.
De functies CArchivePropExchange::ExchangePersistentProp, CResetPropExchange::ExchangePersistentPropen CPropsetPropExchange::ExchangePersistentProp overschrijven deze pure virtuele functie.
CPropExchange::ExchangeProp
Hiermee wordt een eigenschap uitgewisseld tussen een opslagmedium en het besturingselement.
virtual BOOL ExchangeProp(
LPCTSTR pszPropName,
VARTYPE vtProp,
void* pvProp,
const void* pvDefault = NULL) = 0 ;
Parameterwaarden
pszPropName
De naam van de woning die wordt uitgewisseld.
vtProp
Een symbool dat het type eigenschap aangeeft dat wordt uitgewisseld. Mogelijke waarden zijn:
| Symbol | Eigenschapstype |
|---|---|
| VT_I2 | short |
| VT_I4 | long |
| VT_BOOL | BOOL |
| VT_BSTR | CString |
| VT_CY | CY |
| VT_R4 | float |
| VT_R8 | double |
pvProp
Een aanwijzer naar de waarde van de eigenschap.
pvDefault
Aanwijzer naar een standaardwaarde voor de eigenschap.
Retourwaarde
Niet-nul als de uitwisseling is geslaagd; 0 indien mislukt.
Opmerkingen
Als de eigenschap wordt geladen van het medium naar het besturingselement, wordt de waarde van de eigenschap opgehaald uit het medium en opgeslagen in het object waarnaar wordt verwezen door pvProp. Als de eigenschap wordt opgeslagen op het medium, wordt de waarde van het object waarnaar wordt verwezen door pvProp naar het medium geschreven.
De functies CArchivePropExchange::ExchangeProp, CResetPropExchange::ExchangePropen CPropsetPropExchange::ExchangeProp overschrijven deze pure virtuele functie.
CPropExchange::ExchangeVersion
Aangeroepen door het framework voor het afhandelen van persistentie van een versienummer.
virtual BOOL ExchangeVersion(
DWORD& dwVersionLoaded,
DWORD dwVersionDefault,
BOOL bConvert);
Parameterwaarden
dwVersionLoaded
Verwijzing naar een variabele waarin het versienummer van de permanente gegevens die worden geladen, wordt opgeslagen.
dwVersionDefault
Het huidige versienummer van het besturingselement.
bConvert
Geeft aan of permanente gegevens moeten worden geconverteerd naar de huidige versie of dat deze op dezelfde versie moeten blijven als die is geladen.
Retourwaarde
Niet-nul als de functie is geslaagd; 0 anders.
CPropExchange::GetVersion
Roep deze functie aan om het versienummer van het besturingselement op te halen.
DWORD GetVersion();
Retourwaarde
Het versienummer van het besturingselement.
CPropExchange::IsAsynchronous
Bepaalt of eigenschapsuitwisseling asynchroon wordt uitgevoerd.
BOOL IsAsynchronous();
Retourwaarde
Retourneert TRUE als eigenschappen asynchroon worden uitgewisseld, anders ONWAAR.
CPropExchange::IsLoading
Roep deze functie aan om te bepalen of eigenschappen worden geladen in het besturingselement of worden opgeslagen.
BOOL IsLoading();
Retourwaarde
Niet-nul als eigenschappen worden geladen; anders 0.