2008-09-07 7 views
3

J'ai une petite forme affichant le composant DataLayoutControl. Si j'utilise un GridControl, les objets sont sauvegardés.Comment enregistrer des objets persistants databound à un DataLayoutControl (outils DevExpress)?

Si j'utilise DataLayoutControl (qui les affiche individuellement), ils ne sont pas enregistrés après leur modification. L'objet sous-jacent est modifié après l'édition de l'interface utilisateur, mais n'est pas enregistré.

Comment puis-je l'activer? PS: J'ai essayé UnitOfWork.CommitChanges (j'ai un uow traversant toute l'architecture) en vain.

Répondre

3

Vous devez avoir une session et une collection XPCollection sur le formulaire où DataLayoutControl est. Vous devriez accrocher XPCollection avec Session. Vous sélectionnez la bonne classe pour XPCollection et ajoutez peut-être des critères qui font que XPCollection renvoie zéro enregistrements. Accrochez XPCollection au DataLayoutControl.

Ensuite, vous devez fournir un constructeur avec un paramètre: L'Oid de l'objet que vous voulez éditer. Dans le constructeur, vous devez utiliser les critères pour que XPCollection ne contienne que cet objet. Assurez-vous d'appeler Session.Save() dans votre bouton Enregistrer ou votre élément de menu.

Questions connexes