Utilisation des vues de l'enregistrement OLE DB
Si vous souhaitez afficher des données d’ensemble de lignes OLE DB dans une application MFC, utilisez la classe MFC COleDBRecordView. Un objet de vue d’enregistrement créé à partir de COleDBRecordView
vous permet d’afficher les enregistrements de base de données dans les contrôles MFC. La vue d’enregistrement est une vue de formulaire de boîte de dialogue directement connectée à un objet Rowset OLE DB créé à partir de la CRowset
classe de modèle. L’obtention d’un handle dans l’objet d’ensemble de lignes est simple :
COleDBRecordView myRecordView;
...
// CProductAccessor is a user record class
CRowset<CAccessor<CProductAccessor>> myRowSet = myRecordView.OnGetRowset();
La vue affiche les champs de l’objet CRowset
dans les contrôles de la boîte de dialogue. L’objet COleDBRecordView
utilise Dialog Data Exchange (DDX) et la fonctionnalité de navigation intégrée CRowset
(MoveFirst
, , MoveNext
MovePrev
et MoveLast
) pour automatiser le déplacement des données entre les contrôles du formulaire et les champs de l’ensemble de lignes. COleDBRecordView
effectue le suivi de la position de l’utilisateur dans l’ensemble de lignes afin que la vue d’enregistrement puisse mettre à jour l’interface utilisateur et fournir une méthode OnMove pour mettre à jour l’enregistrement actif avant de passer à une autre.
Vous pouvez utiliser des fonctions DDX pour COleDbRecordView
obtenir des données directement à partir du jeu d’enregistrements de base de données et l’afficher dans un contrôle de boîte de dialogue. Utilisez les méthodes DDX_* (par exemple DDX_Text
), et non les fonctions DDX_Field* (par exemple DDX_FieldText
) avec COleDbRecordView
.