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 dialoogvenstergegevensuitwisseling (DDX) en DDV-routines (Dialog Data Validation) die worden gebruikt door de Microsoft Foundation-klassen.
Syntaxis
class CDataExchange
Leden
Openbare constructors
| Naam | Description |
|---|---|
| CDataExchange::CDataExchange | Maakt een CDataExchange object. |
Openbare methoden
| Naam | Description |
|---|---|
| CDataExchange::Fail | Aangeroepen wanneer de validatie mislukt. De focus wordt opnieuw ingesteld op het vorige besturingselement en genereert een uitzondering. |
| CDataExchange::P repareCtrl | Bereidt het opgegeven besturingselement voor voor gegevensuitwisseling of validatie. Gebruiken voor niet-bewerkbesturingselementen. |
| CDataExchange::P repareEditCtrl | Bereidt het opgegeven besturingselement voor bewerken voor gegevensuitwisseling of validatie. |
| CDataExchange::P repareOleCtrl | Bereidt het opgegeven OLE-besturingselement voor voor gegevensuitwisseling of validatie. Gebruiken voor niet-bewerkbesturingselementen. |
Leden van openbare gegevens
| Naam | Description |
|---|---|
| CDataExchange::m_bSaveAndValidate | Vlag voor de richting van DDX en DDV. |
| CDataExchange::m_pDlgWnd | Het dialoogvenster of venster waarin de gegevensuitwisseling plaatsvindt. |
Opmerkingen
CDataExchange heeft geen basisklasse.
Gebruik deze klasse als u routines voor gegevensuitwisseling schrijft voor aangepaste gegevenstypen of besturingselementen, of als u uw eigen gegevensvalidatieroutines schrijft. Zie Technical Note 26 voor meer informatie over het schrijven van uw eigen DDX- en DDV-routines. Zie dialoogvensters voor gegevensuitwisseling en validatie endialoogvensters voor een overzicht van DDX en DDV.
Een CDataExchange object biedt de contextinformatie die nodig is om DDX en DDV te kunnen uitvoeren. De vlag m_bSaveAndValidate ONWAAR is wanneer DDX wordt gebruikt om de initiële waarden van dialoogvensterbesturingselementen van gegevensleden in te vullen. De vlag m_bSaveAndValidate is WAAR wanneer DDX wordt gebruikt om de huidige waarden van dialoogvensterbesturingselementen in te stellen op gegevensleden en wanneer DDV wordt gebruikt om de gegevenswaarden te valideren. Als de DDV-validatie mislukt, wordt in de DDV-procedure een berichtvenster weergegeven waarin de invoerfout wordt uitgelegd. De DDV-procedure roept vervolgens Fail aan om de focus opnieuw in te stellen op het besturingselement voor belediging en een uitzondering te genereren om het validatieproces te stoppen.
Overnamehiërarchie
CDataExchange
Requirements
Koptekst: afxwin.h
CDataExchange::CDataExchange
Roep deze lidfunctie aan om een CDataExchange object te maken.
CDataExchange(
CWnd* pDlgWnd,
BOOL bSaveAndValidate);
Parameterwaarden
pDlgWnd
Een aanwijzer naar het bovenliggende venster dat het besturingselement bevat. Meestal is dit een CDialog-afgeleid object.
bSaveAndValidate
Als WAAR is, valideert dit object gegevens en schrijft het vervolgens gegevens van de besturingselementen naar de leden. Als ONWAAR is, worden met dit object gegevens verplaatst van leden naar besturingselementen.
Opmerkingen
Maak zelf een CDataExchange object om extra informatie op te slaan in het gegevensuitwisselingsobject om door te geven aan de CWnd::D oDataExchange-lidfunctie van uw venster.
Example
CYourDataExchange dx(this, FALSE);
try
{
DoDataExchange(&dx);
}
catch (CUserException *pe)
{
// some part of the exchange went wrong
// but the user has already been notified
pe->Delete();
}
CDataExchange::Fail
In het framework wordt deze lidfunctie aangeroepen wanneer een DDV-bewerking (Dialog Data Validation) mislukt.
void Fail();
Opmerkingen
Fail herstelt de focus en selectie naar het besturingselement waarvan de validatie is mislukt (als er een besturingselement is om te herstellen).
Fail genereert vervolgens een uitzondering van het type CUserException om het validatieproces te stoppen. De uitzondering zorgt ervoor dat er een berichtvak wordt weergegeven waarin de fout wordt uitgelegd. Nadat de DDV-validatie is mislukt, kan de gebruiker gegevens opnieuw in het besturingselement voor belediging opnieuw voltooien.
Implementors van aangepaste DDV-routines kunnen vanuit hun routines aanroepen Fail wanneer een validatie mislukt.
Zie Technical Note 26 voor meer informatie over het schrijven van uw eigen DDX- en DDV-routines. Zie De onderwerpen over dialoogvenstergegevensuitwisseling en validatie endialoogvenster voor een overzicht van DDX en DDV.
CDataExchange::m_bSaveAndValidate
Met deze vlag wordt de richting van een DDX-bewerking (Dialog Data Exchange) aangegeven.
BOOL m_bSaveAndValidate;
Opmerkingen
De vlag is niet-nul als het CDataExchange object wordt gebruikt om gegevens van de dialoogvensterbesturingselementen te verplaatsen naar leden van de dialoogvensterklasse nadat de gebruiker de besturingselementen heeft bewerkt. De vlag is nul als het object wordt gebruikt om dialoogvensterbesturingselementen van dialoogvensterklassegegevensleden te initialiseren.
De vlag is ook niet-nul tijdens dialoogvenstergegevensvalidatie (DDV).
Zie Technical Note 26 voor meer informatie over het schrijven van uw eigen DDX- en DDV-routines. Zie De onderwerpen over dialoogvenstergegevensuitwisseling en validatie endialoogvenster voor een overzicht van DDX en DDV.
CDataExchange::m_pDlgWnd
Bevat een aanwijzer naar het CWnd-object waarvoor dialoogvenstergegevensuitwisseling (DDX) of validatie (DDV) plaatsvindt.
CWnd* m_pDlgWnd;
Opmerkingen
Dit object is meestal een CDialog-object . Implementors van aangepaste DDX- of DDV-routines kunnen deze aanwijzer gebruiken om toegang te krijgen tot het dialoogvenster met de besturingselementen waarop ze werken.
Zie Technical Note 26 voor meer informatie over het schrijven van uw eigen DDX- en DDV-routines. Zie De onderwerpen over dialoogvenstergegevensuitwisseling en validatie endialoogvenster voor een overzicht van DDX en DDV.
CDataExchange::P repareCtrl
Het framework roept deze lidfunctie aan om het opgegeven besturingselement voor te bereiden voor dialoogvenstergegevensuitwisseling (DDX) en validatie (DDV).
HWND PrepareCtrl(int nIDC);
Parameterwaarden
nIDC
De id van het besturingselement dat moet worden voorbereid op DDX of DDV.
Retourwaarde
De HWND van het besturingselement dat wordt voorbereid op DDX of DDV.
Opmerkingen
Gebruik In plaats daarvan PrepareEditCtrl voor het bewerken van besturingselementen; gebruik deze lidfunctie voor alle andere besturingselementen.
Voorbereiding bestaat uit het opslaan van de HWND van het besturingselement in de CDataExchange klasse. Het framework gebruikt deze ingang om de focus te herstellen naar het eerder gerichte besturingselement in het geval van een DDX- of DDV-fout.
Implementors van aangepaste DDX- of DDV-routines moeten alle niet-bewerkingsbesturingselementen aanroepen PrepareCtrl waarvoor ze gegevens uitwisselen via DDX of gegevens valideren via DDV.
Zie Technical Note 26 voor meer informatie over het schrijven van uw eigen DDX- en DDV-routines. Zie De onderwerpen over dialoogvenstergegevensuitwisseling en validatie endialoogvenster voor een overzicht van DDX en DDV.
CDataExchange::P repareEditCtrl
Het framework roept deze lidfunctie aan om het opgegeven bewerkingsbesturingselement voor dialoogvenstergegevensuitwisseling (DDX) en validatie (DDV) voor te bereiden.
HWND PrepareEditCtrl(int nIDC);
Parameterwaarden
nIDC
De id van het besturingselement bewerken dat moet worden voorbereid op DDX of DDV.
Retourwaarde
De HWND van het bewerkingsbesturingselement dat wordt voorbereid voor DDX of DDV.
Opmerkingen
Gebruik In plaats daarvan PrepareCtrl voor alle niet-bewerkingsbesturingselementen.
Voorbereiding bestaat uit twee dingen.
PrepareEditCtrl Slaat eerst de HWND van het besturingselement op in de CDataExchange klasse. Het framework gebruikt deze ingang om de focus te herstellen naar het eerder gerichte besturingselement in het geval van een DDX- of DDV-fout.
PrepareEditCtrl Ten tweede stelt u een vlag in de CDataExchange klasse in om aan te geven dat het besturingselement waarvan de gegevens worden uitgewisseld of gevalideerd, een besturingselement voor bewerken is.
Implementors van aangepaste DDX- of DDV-routines moeten alle besturingselementen voor bewerken aanroepen PrepareEditCtrl waarvoor ze gegevens uitwisselen via DDX of gegevens valideren via DDV.
Zie Technical Note 26 voor meer informatie over het schrijven van uw eigen DDX- en DDV-routines. Zie De onderwerpen over dialoogvenstergegevensuitwisseling en validatie endialoogvenster voor een overzicht van DDX en DDV.
CDataExchange::P repareOleCtrl
Het framework roept deze lidfunctie aan om het opgegeven OLE-besturingselement voor te bereiden voor dialoogvenstergegevensuitwisseling (DDX) en validatie (DDV).
COleControlSite* PrepareOleCtrl(int nIDC);
Parameterwaarden
nIDC
De id van het OLE-besturingselement dat moet worden voorbereid op DDX of DDV.
Retourwaarde
Een aanwijzer naar de OLE-besturingssite.
Opmerkingen
Gebruik In plaats daarvan PrepareEditCtrl voor het bewerken van besturingselementen of PrepareCtrl voor alle andere niet-OLE-besturingselementen.
Implementors van aangepaste DDX- of DDV-routines moeten alle OLE-besturingselementen aanroepen PrepareOleCtrl waarvoor ze gegevens uitwisselen via DDX of gegevens valideren via DDV.
Zie Technical Note 26 voor meer informatie over het schrijven van uw eigen DDX- en DDV-routines. Zie De onderwerpen over dialoogvenstergegevensuitwisseling en validatie endialoogvenster voor een overzicht van DDX en DDV.
Zie ook
MFC-voorbeeldWEERGAVEEX
Hiërarchiegrafiek
CWnd::D oDataExchange
CWnd::UpdateData