Egenskapssidor (MFC)

Anmärkning

Biblioteket För Microsoft Foundation-klasser (MFC) stöds fortfarande. Vi lägger dock inte längre till funktioner eller uppdaterar dokumentationen.

Egenskapssidor visar aktuella värden för specifika OLE-kontrollegenskaper i ett anpassningsbart, grafiskt gränssnitt för visning och redigering genom att stödja en mekanism för datamappning baserat på dialogdatautbyte (DDX).

Den här datamappningsmekanismen mappar egenskapssidans kontroller till de enskilda egenskaperna för OLE-kontrollen. Värdet för kontrollegenskapen återspeglar statusen eller innehållet i egenskapssidans kontroll. Mappningen mellan egenskapssidans kontroller och egenskaper anges av DDP_ funktionsanrop i egenskapssidans DoDataExchange medlemsfunktion. Följande är en lista över DDP_ funktioner som utbyter data som angetts med hjälp av egenskapssidan för kontrollen:

Dataöverföring för egenskapssida

Namn Description
DDP_CBIndex Länkar den valda strängens index i en kombinationsruta med en kontrolls egenskap.
DDP_CBString Länkar den markerade strängen i en kombinationsruta med en kontrolls egenskap. Den valda strängen kan börja med samma bokstäver som egenskapens värde men behöver inte matcha den helt.
DDP_CBStringExact Länkar den markerade strängen i en kombinationsruta med en kontrolls egenskap. Den markerade strängen och egenskapens strängvärde måste matcha exakt.
DDP_Check Länkar en kryssruta på kontrollens egenskapssida med en kontrolls egenskap.
DDP_LBIndex Länkar den markerade strängens index i en listruta med en kontrolls egenskap.
DDP_LBString Länkar den markerade strängen i en listruta med en kontrolls egenskap. Den valda strängen kan börja med samma bokstäver som egenskapens värde men behöver inte matcha den helt.
DDP_LBStringExact Länkar den markerade strängen i en listruta med en kontrolls egenskap. Den markerade strängen och egenskapens strängvärde måste matcha exakt.
DDP_PostProcessing Slutför överföringen av egenskapsvärden från din kontroll.
DDP_Radio Länkar en alternativknappsgrupp på kontrollens egenskapssida med en kontrolls egenskap.
DDP_Text Länkar en kontroll på kontrollens egenskapssida med en kontrolls egenskap. Den här funktionen hanterar flera olika typer av egenskaper, till exempel double, short, BSTR och long.

Mer information om funktions DoDataExchange - och egenskapssidor finns i artikeln ActiveX-kontroller: egenskapssidor.

Följande är en lista över makron som används för att skapa och hantera egenskapssidor för en OLE-kontroll:

Egenskapssidor

Namn Description
BEGIN_PROPPAGEIDS Börjar listan med egenskapssidans ID:t.
END_PROPPAGEIDS Avslutar listan över egenskapssidans ID:t.
PROPPAGEID Deklarerar en egenskapssida för kontrollklassen.

DDP_CBIndex

Anropa den här funktionen i egenskapssidans funktion för att synkronisera värdet för en heltalsegenskap DoDataExchange med indexet för den aktuella markeringen i en kombinationsruta på egenskapssidan.

void AFXAPI DDP_CBIndex(
    CDataExchange* pDX,
    int id,
    int& member,
    LPCTSTR pszPropName);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

ID
Resurs-ID för kombinationsrutekontrollen som är associerad med kontrollegenskapen som anges av pszPropName.

Medlem
Medlemsvariabeln som är associerad med egenskapssidans kontroll som anges av ID och egenskapen som anges av pszPropName.

pszPropName
Egenskapsnamnet för den kontrollegenskap som ska bytas ut med kombinationsrutekontrollen som anges av ID.

Anmärkningar

Den här funktionen ska anropas före motsvarande DDX_CBIndex funktionsanrop.

Kravspecifikation

Sidhuvud afxctl.h

DDP_CBString

Anropa den här funktionen i egenskapssidans funktion för att synkronisera värdet för en strängegenskap med den aktuella markeringen i en kombinationsruta på egenskapssidan DoDataExchange .

void AFXAPI DDP_CBString(
    CDataExchange* pDX,
    int id,
    CString& member,
    LPCTSTR pszPropName);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

ID
Resurs-ID för kombinationsrutekontrollen som är associerad med kontrollegenskapen som anges av pszPropName.

Medlem
Medlemsvariabeln som är associerad med egenskapssidans kontroll som anges av ID och egenskapen som anges av pszPropName.

pszPropName
Egenskapsnamnet för den kontrollegenskap som ska bytas ut med kombinationsrutesträngen som anges av ID.

Anmärkningar

Den här funktionen ska anropas före motsvarande DDX_CBString funktionsanrop.

Kravspecifikation

Sidhuvud afxctl.h

DDP_CBStringExact

Anropa den här funktionen i egenskapssidans DoDataExchange funktion för att synkronisera värdet för en strängegenskap som exakt matchar den aktuella markeringen i en kombinationsruta på egenskapssidan.

void AFXAPI DDP_CBStringExact(
    CDataExchange* pDX,
    int id,
    CString& member,
    LPCTSTR pszPropName);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

ID
Resurs-ID för kombinationsrutekontrollen som är associerad med kontrollegenskapen som anges av pszPropName.

Medlem
Medlemsvariabeln som är associerad med egenskapssidans kontroll som anges av ID och egenskapen som anges av pszPropName.

pszPropName
Egenskapsnamnet för den kontrollegenskap som ska bytas ut med kombinationsrutesträngen som anges av ID.

Anmärkningar

Den här funktionen ska anropas före motsvarande DDX_CBStringExact funktionsanrop.

Kravspecifikation

Sidhuvud afxctl.h

DDP_Check

Anropa den här funktionen i egenskapssidans funktion för att synkronisera värdet för egenskapen med kontrollen för den associerade egenskapssidan DoDataExchange .

void AFXAPI DDP_Check(
    CDataExchange* pDX,
    int id,
    int & member,
    LPCSTR pszPropName);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

ID
Resurs-ID:t för kryssrutan som är associerad med kontrollegenskapen som anges av pszPropName.

Medlem
Medlemsvariabeln som är associerad med egenskapssidans kontroll som anges av ID och egenskapen som anges av pszPropName.

pszPropName
Egenskapsnamnet för den kontrollegenskap som ska bytas ut med kryssrutan som anges av ID.

Anmärkningar

Den här funktionen ska anropas före motsvarande DDX_Check funktionsanrop.

Kravspecifikation

Sidhuvud afxctl.h

DDP_LBIndex

Anropa den här funktionen i egenskapssidans funktion för att synkronisera värdet för en heltalsegenskap DoDataExchange med indexet för den aktuella markeringen i en listruta på egenskapssidan.

void AFXAPI DDP_LBIndex(
    CDataExchange* pDX,
    int id,
    int& member,
    LPCTSTR pszPropName);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

ID
Resurs-ID för listrutekontrollen som är associerad med kontrollegenskapen som anges av pszPropName.

Medlem
Medlemsvariabeln som är associerad med egenskapssidans kontroll som anges av ID och egenskapen som anges av pszPropName.

pszPropName
Egenskapsnamnet för den kontrollegenskap som ska bytas ut med listrutesträngen som anges av ID.

Anmärkningar

Den här funktionen ska anropas före motsvarande DDX_LBIndex funktionsanrop.

Kravspecifikation

Sidhuvud afxctl.h

DDP_LBString

Anropa den här funktionen i egenskapssidans funktion för att synkronisera värdet för en strängegenskap med den aktuella markeringen i en listruta på egenskapssidan DoDataExchange .

void AFXAPI DDP_LBString(
    CDataExchange* pDX,
    int id,
    CString& member,
    LPCTSTR pszPropName);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

ID
Resurs-ID för listrutekontrollen som är associerad med kontrollegenskapen som anges av pszPropName.

Medlem
Medlemsvariabeln som är associerad med egenskapssidans kontroll som anges av ID och egenskapen som anges av pszPropName.

pszPropName
Egenskapsnamnet för den kontrollegenskap som ska bytas ut med listrutesträngen som anges av ID.

Anmärkningar

Den här funktionen ska anropas före motsvarande DDX_LBString funktionsanrop.

Kravspecifikation

Sidhuvud afxctl.h

DDP_LBStringExact

Anropa den här funktionen i egenskapssidans DoDataExchange funktion för att synkronisera värdet för en strängegenskap som exakt matchar den aktuella markeringen i en listruta på egenskapssidan.

void AFXAPI DDP_LBStringExact(
    CDataExchange* pDX,
    int id,
    CString& member,
    LPCTSTR pszPropName);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

ID
Resurs-ID för listrutekontrollen som är associerad med kontrollegenskapen som anges av pszPropName.

Medlem
Medlemsvariabeln som är associerad med egenskapssidans kontroll som anges av ID och egenskapen som anges av pszPropName.

pszPropName
Egenskapsnamnet för den kontrollegenskap som ska bytas ut med listrutesträngen som anges av ID.

Anmärkningar

Den här funktionen ska anropas före motsvarande DDX_LBStringExact funktionsanrop.

Kravspecifikation

Sidhuvud afxctl.h

DDP_PostProcessing

Anropa den här funktionen i egenskapssidans funktion för att slutföra överföringen av egenskapsvärden DoDataExchange från egenskapssidan till din kontroll när egenskapsvärden sparas.

void AFXAPI DDP_PostProcessing(CDataExchange * pDX);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

Anmärkningar

Den här funktionen ska anropas när alla datautbytesfunktioner har slutförts. Till exempel:

void CMyAxPropPage::DoDataExchange(CDataExchange *pDX)
{
   DDP_Text(pDX, IDC_POSITIONEDIT, m_NeedlePosition, _T("NeedlePosition"));
   DDX_Text(pDX, IDC_POSITIONEDIT, m_NeedlePosition);
   DDV_MinMaxInt(pDX, m_NeedlePosition, 0, 3);
   DDP_PostProcessing(pDX);
}

Kravspecifikation

Sidhuvud afxctl.h

DDP_Radio

Anropa den här funktionen i kontrollens DoPropExchange funktion för att synkronisera värdet för egenskapen med den associerade egenskapssidans alternativknappkontroll.

void AFXAPI DDP_Radio(
    CDataExchange* pDX,
    int id,
    int & member,
    LPCTSTR pszPropName);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

ID
Resurs-ID för alternativknappskontrollen som är associerad med kontrollegenskapen som anges av pszPropName.

Medlem
Medlemsvariabeln som är associerad med egenskapssidans kontroll som anges av ID och egenskapen som anges av pszPropName.

pszPropName
Egenskapsnamnet för den kontrollegenskap som ska bytas ut med den alternativknappskontroll som anges av ID.

Anmärkningar

Den här funktionen ska anropas före motsvarande DDX_Radio funktionsanrop.

Kravspecifikation

Sidhuvud afxctl.h

DDP_Text

Anropa den här funktionen i kontrollens funktion för att synkronisera värdet för egenskapen med den associerade egenskapssidans DoDataExchange kontroll.

void AFXAPI DDP_Text(
    CDataExchange* pDX,
    int id,
    BYTE & member,
    LPCTSTR pszPropName);

void AFXAPI DDP_Text(
    CDataExchange* pDX,
    int id,
    int & member,
    LPCTSTR pszPropName);

void AFXAPI DDP_Text(
    CDataExchange* pDX,
    int id,
    UINT & member,
    LPCTSTR pszPropName);

void AFXAPI DDP_Text(
    CDataExchange* pDX,
    int id,
    long & member,
    LPCTSTR pszPropName);

void AFXAPI DDP_Text(
    CDataExchange* pDX,
    int id,
    DWORD & member,
    LPCTSTR pszPropName);

void AFXAPI DDP_Text(
    CDataExchange* pDX,
    int id,
    float & member,
    LPCTSTR pszPropName);

void AFXAPI DDP_Text(
    CDataExchange* pDX,
    int id,
    double & member,
    LPCTSTR pszPropName);

void AFXAPI DDP_Text(
    CDataExchange* pDX,
    int id,
    CString & member,
    LPCTSTR pszPropName);

Parameterar

Pdx
Pekare till ett CDataExchange objekt. Ramverket tillhandahåller det här objektet för att fastställa kontexten för datautbytet, inklusive dess riktning.

ID
Resurs-ID för kontrollen som är associerad med kontrollegenskapen som anges av pszPropName.

Medlem
Medlemsvariabeln som är associerad med egenskapssidans kontroll som anges av ID och egenskapen som anges av pszPropName.

pszPropName
Egenskapsnamnet för den kontrollegenskap som ska bytas ut med den kontroll som anges av ID.

Anmärkningar

Den här funktionen ska anropas före motsvarande DDX_Text funktionsanrop.

Kravspecifikation

Sidhuvud afxctl.h

BEGIN_PROPPAGEIDS

Börjar definitionen av kontrollens lista över egenskapssidans ID:er.

BEGIN_PROPPAGEIDS(class_name,  count)

Parameterar

class_name
Namnet på kontrollklassen för vilken egenskapssidor anges.

antal
Antalet egenskapssidor som används av kontrollklassen.

Anmärkningar

I implementeringsfilen (.cpp) som definierar medlemsfunktionerna för klassen startar du listan med egenskapssidor med BEGIN_PROPPAGEIDS makro, lägger sedan till makroposter för var och en av egenskapssidorna och slutför listan över egenskapssidor med END_PROPPAGEIDS makro.

Mer information om egenskapssidor finns i artikeln ActiveX-kontroller: egenskapssidor.

Kravspecifikation

Sidhuvud afxctl.h

END_PROPPAGEIDS

Avslutar definitionen av din egenskapssidas ID-lista.

END_PROPPAGEIDS(class_name)

Parameterar

class_name
Namnet på kontrollklassen som äger egenskapssidan.

Kravspecifikation

Sidhuvud afxctl.h

PROPPAGEID

Lägger till en egenskapssida för användning av OLE-kontrollen.

PROPPAGEID(clsid)

Parameterar

clsid
Det unika klass-ID:t för en egenskapssida.

Anmärkningar

Alla PROPPAGEID-makron måste placeras mellan BEGIN_PROPPAGEIDS och END_PROPPAGEIDS makron i kontrollens implementeringsfil.

Kravspecifikation

Sidhuvud afxctl.h

Se även

Makro och globala variabler