IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Associer des valeurs saisies dans DetailsView via le ItemInserting Event


Sujet :

VB.NET

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 97
    Points : 51
    Points
    51
    Par défaut Associer des valeurs saisies dans DetailsView via le ItemInserting Event
    Bonjour,

    J'ai un control detailview avec lequel je souhaite alimenter une table sql.
    J'ai customiseé un peu les champs avec des controls comme une dropdownlist, un uploadfile, etc...

    Je souhaite, dans l'évènement ItemInserting, associé les valeurs saisies par l'utilisateur avec les champs de ma table.

    Dans un gridview, c'est plus simple, on utilise e.InputParameters("nom_du_champ") = valeur
    Par contre, j'ai pas trouvé comment faire avec un detailview. Je m'y perd!

    Si quelqu'un pouvait me mettre sur la piste, là je sèche!!

    Bonne journée,
    Tommy

  2. #2
    Expert confirmé
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Points : 4 066
    Points
    4 066
    Par défaut
    Bonjour,

    Une simple recherche sur "DetailsView" et "ItemInserting" t'aurais permis de trouvé cette doc MSDN avec un exemple sur l'utilisation de e.NewValues.

    En espérant t'avoir aidé.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 97
    Points : 51
    Points
    51
    Par défaut
    Bonjour Nicolas,

    effectivement, je l'ai vu, mais je dois avoir un problème de compréhension quand à l'utilisation.

    J'ai par exemple un champ "fileupload" qui contient dans sa propriété "text" le chemin d'une photo.
    Cette valeur doit être enregistrer dans la bdd lors de l'insertion d'un élément.
    Le champ sql est un string

    Je n'arrive pas à interpréter correctement la synthaxe suivante pour voir comment faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    e.Values(i) = Server.HtmlEncode(e.Values(i).ToString())
    Comment récupérer ma propriété "tex" de mon control "fileupload"?

    Cordialement

  4. #4
    Expert confirmé
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Points : 4 066
    Points
    4 066
    Par défaut
    Dans le cas d'un contrôle rajouté dans une GridView ou un DetailsView, il vaut mieux utiliser FindControl pour accéder aux propriétés.

    Il te faut donc regarder pour la ligne en cours d'édition, et utiliser FindControl avec un cast sur le bon type de contrôle (FileUpload en l'occurrence) et tu auras accès à ta valeur.

    En espérant t'avoir aidé.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 97
    Points : 51
    Points
    51
    Par défaut
    Pardon, je me suis un peu mal exprimé, pour récupérer les controls, j'utilise bien findcontrol, voici mon code, il sera peut-être plus clair que moi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
        Protected Sub Ajoutprod_ItemInserting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DetailsViewInsertEventArgs) Handles Ajoutprod.ItemInserting
            '    'DECLARATION DE VARIABLES
     
            Dim NvxProduit As TextBox = Ajoutprod.FindControl("insertion_nom_produit")
            Dim NvxCategorie As DropDownList = Ajoutprod.FindControl("DDL_LstCatAjoutProd")
            Dim NvxDescription As TextBox = Ajoutprod.FindControl("Insertion_commentaire")
            Dim NvxActif As CheckBox = Ajoutprod.FindControl("Insertion_Activite")
            Dim NvxPrix As TextBox = Ajoutprod.FindControl("Insertion_Prix")
            Dim NvxPhoto As FileUpload = Ajoutprod.FindControl("Insertion_photo")
            Dim UploadDetails As Label = Ajoutprod.FindControl("UploadDetails")
            Dim filePath As String = Nothing
    Je veux donc maintenant affecter ces différents champs à ceux de ma table.
    Et là je suis un peu perdu avec le detailview control.

    Je n'arrive pas à retrouver mes champs dans la variable e pour leur affecter les valeurs saisies par l'utilisateur.

    Je n'arrive à rien en utilisant le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    For i As Integer = 0 To e.Values.Count - 1
          If e.Values(i) IsNot Nothing Then
            e.Values(i) = Server.HtmlEncode(e.Values(i).ToString())
          End If
        Next
    Pour infos, est-ce normal que e.values.count est égal à 5 alors que mon detailview contient 6 champs?

    Là je sèche vraiment!!

    Tommy

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/09/2014, 19h29
  2. [XL-2010] Associer des valeurs identiques dans deux feuilles différentes
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/01/2014, 14h38
  3. Stocker des valeurs saisies dans un JTextArea
    Par Erwan7374 dans le forum Composants
    Réponses: 1
    Dernier message: 12/05/2012, 14h55
  4. Réponses: 7
    Dernier message: 07/05/2009, 13h09
  5. Filtrage des valeurs saisies dans un JOptionPane
    Par Shurka dans le forum AWT/Swing
    Réponses: 9
    Dernier message: 11/08/2007, 15h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo