J'ai un FormView lié dans le fichier de code à une liste générique. Maintenant, lors de la modification d'un enregistrement, je souhaite accéder aux Keys et NewValues à partir du paramètre FormViewUpdateEventArgs
de la méthode du gestionnaire d'événements ItemUpdating
. D'après ce que j'ai essayé et recherché sur Internet jusqu'à maintenant, j'ai appris que les valeurs mises à jour ne sont disponibles que si Formview est défini comme un contrôle de source de données sur la page de balisage sinon elles seraient nulles . Est-ce vrai?Récupération de clés et de valeurs NewValues dans une vue FormView avec liaison de données manuelle
En second lieu, en ce moment je suis CASTING la propriété objet sender
à FormView et remplir individuellement chaque objet en utilisant la méthode FindControl
pour trouver et récupérer les valeurs présentes dans les commandes. Est-ce la meilleure façon de faire cette tâche?
À titre d'exemple, voici ce que je fais atm:
FormView currentForm = (FormView)sender;
ListObject.ID = new Guid(((HiddenField)(currentForm.FindControl("hdnID"))).Value);
ListObject.Name = ((TextBox)(currentForm.FindControl("txtName"))).Text;
Merci pour les gars d'aide!
FindControl est toujours "pas la meilleure façon" de faire les choses parce que c'est un peu cher. vous devriez vraiment l'utiliser en dernier recours. Dans votre cas, je pense que vous devriez vraiment envisager d'utiliser un ObjectDataSource au lieu de le lier directement directement dans votre code –