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

ASP.NET Discussion :

[Repeater] Contrôles dynamiques - Habitudes de programmation


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de nicolas.pied
    Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Janvier 2005
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes

    Informations forums :
    Inscription : Janvier 2005
    Messages : 249
    Par défaut [Repeater] Contrôles dynamiques - Habitudes de programmation
    Bonjour,

    J'aurais une petite question sur vos habitudes de développement :

    Imaginons que nous avons un Repeater pour lequel les RepeaterItems contiennent des contrôles WebForms (DropDownList, CheckBox, TextBox, etc.) ajoutés dynamiquement par le code. Comment faites-vous pour conserver les valeurs saisies dans les différentes lignes du Repeater après un évènement de type PostBack ?

    Actuellement, j'ai l'impression qu'il faut réaffecter la source de données (DataSource) à chaque PostBack sinon le Repeater se retrouve dépourvu d'items et bien sûr repositionner les valeurs précédemment saisies à la main dans le code source.

    Est-il possible de pallier ce problème via le ViewState ?

    Merci pour vos réponses.
    Un peu d'humour : jokes.guppix.fr
    Articles et actualités informatiques : Kbups.org
    Articles sur le développement informatique : nicolaspied.developpez.com

  2. #2
    Membre éclairé
    Avatar de nicolas.pied
    Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Janvier 2005
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes

    Informations forums :
    Inscription : Janvier 2005
    Messages : 249
    Par défaut
    Apparemment, personne n'ajoute dynamiquement de contrôles par le code source ;-)

    Quelqu'un aurait-il une ou des réponses à mes questions, svp ?
    Un peu d'humour : jokes.guppix.fr
    Articles et actualités informatiques : Kbups.org
    Articles sur le développement informatique : nicolaspied.developpez.com

  3. #3
    Membre émérite Avatar de bizet
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2005
    Messages
    717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 717
    Par défaut
    Salut

    on va dire que ca depend du cas de figure.

    Par exemple, si pour obtenir ton DataSource tu dois executer une requete SQL très compliquée qui demande bcp de ressources pour un resultat d'environ 10 items, alors il est plutot conseillé de mettre le résultat dans le ViewState.

    Mais par contre si tu as une simple requete qui te renvoie 200 lignes, il est peut etre préférable de ne pas mettre dans le ViewState pour ne pas que la page soit trop lourde mais de faire des appels BD à chaque fois...

  4. #4
    Membre éclairé
    Avatar de nicolas.pied
    Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Janvier 2005
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes

    Informations forums :
    Inscription : Janvier 2005
    Messages : 249
    Par défaut
    Et comment gères-tu les contrôles dynamiques qui se trouvent dans ton repeater (le fait de conserver les valeurs d'un postback à un autre) ?

    Merci.
    Un peu d'humour : jokes.guppix.fr
    Articles et actualités informatiques : Kbups.org
    Articles sur le développement informatique : nicolaspied.developpez.com

  5. #5
    Membre émérite Avatar de bizet
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2005
    Messages
    717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 717
    Par défaut
    Citation Envoyé par nicolas.pied Voir le message
    Et comment gères-tu les contrôles dynamiques qui se trouvent dans ton repeater (le fait de conserver les valeurs d'un postback à un autre) ?

    Merci.
    En général je passe par des Usercontrols dans un repeater, comme ca je gere ca comme si je gérais une "simple" page.

    Mais je dirais que lors de la création de ton composant dynamique tu actives le ViewState et donc la valeur sera conservée.

  6. #6
    Membre chevronné Avatar de npuzin
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2007
    Messages : 265
    Par défaut
    Citation Envoyé par nicolas.pied Voir le message
    Apparemment, personne n'ajoute dynamiquement de contrôles par le code source ;-)

    Quelqu'un aurait-il une ou des réponses à mes questions, svp ?
    J'évite généralement d'ajouter des controles dynamiquement avec du code. Je pense que ce n'est pas vraiment une bonne pratique car si tu bosses avec un designer qui retravaillera ton site, il ne pourra rien faire sur tes controles générés dynamiquement.

    En général je me débrouille pour mettre tous mes compos, et rendre invisibles ceux dont je n'ai pas besoin. Je ne sais pas si dans ce cas ca solutionne ton probleme.

  7. #7
    Membre éclairé Avatar de bilb0t
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    378
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 378
    Par défaut
    Bonjour,

    je me pose les mêmes questions.

    Comme tu le verra peut-être si tu lis mon post, le viewstate sauve les données de tes controles et pas les controles en eux même.

    Tu dois donc au minimu recréer tes controles avec les même ID (!!!) et le viewState va se charger d'y mettre les valeurs.

  8. #8
    Membre éclairé
    Avatar de nicolas.pied
    Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Janvier 2005
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes

    Informations forums :
    Inscription : Janvier 2005
    Messages : 249
    Par défaut
    Oui, c'est bien ça le problème ; il faut en effet recréer les contrôles
    Un peu d'humour : jokes.guppix.fr
    Articles et actualités informatiques : Kbups.org
    Articles sur le développement informatique : nicolaspied.developpez.com

Discussions similaires

  1. [Débutant] Ajouter des contrôles dynamiquement en phase d'exécution du programme
    Par anissa2 dans le forum Développement Windows
    Réponses: 0
    Dernier message: 24/12/2012, 10h37
  2. [VBA Excel] Créer plusieurs contrôles dynamiquement
    Par loacast dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 08/12/2005, 17h27
  3. Réponses: 5
    Dernier message: 13/10/2005, 19h33
  4. [VB.NET] repeater/datagrid dynamique clique d'un bouton
    Par lucie.houel dans le forum ASP.NET
    Réponses: 11
    Dernier message: 19/07/2005, 16h17
  5. [VB.NET] Creer des contrôles dynamiquement
    Par theartist dans le forum Windows Forms
    Réponses: 4
    Dernier message: 11/01/2005, 11h42

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