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 :

UserControl chargé dynamiquement


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 557
    Par défaut UserControl chargé dynamiquement
    Bonjour,
    J'ai un souci que je n'arrive pas à régler tout seul et je suis sûr qu'il doit y avoir un truc tout bête auquel je ne pense pas.

    J'ai une page maître dans laquelle je charge dynamiquement des Usercontrol
    J'ai opté pour cette solution plutôt qu'un repeater pour centraliser mon code au sein de mon contrôle

    La page maitre fait un tri des données pour afficher les contrôles en fonction de certains critères
    Ces critères sont modifiables dans le contrôle (c'est çà qui me mets le bazar maintenant)
    Je me rends compte que depuis que j'ai rajouté ce tri, le rechargement de la page entraine un ordre différent de mes contrôles (ce qui est logique) mais l'évènement click s'éxécute sur le contrôle avec l'identifiant xxxx_ctrl12_xxx par exemple si j'ai cliqué sur le 12ième qui peut se retrouver en 11ième position après le rechargement. => ma mise à jour va se faire sur la mauvaise donnée

    Du coup, je suis bien embêté et je pense que je dois passé à côté d'un truc bête

    Merci d'avance pour votre aide

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 557
    Par défaut
    En solution de secours, je basculerais d'une collection de usercontrol vers un Repeater pour m'affranchir de ce problème

  3. #3
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    Passe en paramètre du click l'id de ton objet, si bien sûr tes objets on des id.
    Dans le traitement du click, tu utilises l'id pour retrouver l'objet à traiter.

    Si tes objets n'ont pas d'id et que tu n'en a pas le besoin par ailleurs, ajoute un Guid que tu initialises sur le constructeur et passe le Guid en paramètre.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 557
    Par défaut
    C'est justement le problème

    Mes contrôles sont complètement chargés dynamiquement au chargement de la page.
    Le click qui sur le controle fait un postback
    => je repare sur le chargement de la page qui recharge les contrôle

    Avant que je n'applique un tri, tout était rechargé dans le même ordre, il n'y avait donc pas de souci
    Maintenant que j'y mets un ordre, le click peut avoir un effet sur le chargement suivant et çà met le bazar

    Je crois que c'est inhérent l'infrastructure mon souci et que je vais devoir passer par de repeater

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 557
    Par défaut
    Eurêka..
    Merci DelphiManiac, vous m'avez mis sur la piste en fait

    Il y a en effet une propriété sur le usercontrol que je n'affectais pas.
    Du coup, au chargement dynamique, asp.net mettait ce qu'il voulait : ctrl01, ctrl02, etc.... dans l'ordre de création
    => sur un ordre différent, le ctrl02 pouvait être affecté à un autre contrôle et du coup mon code ne s'exécutait pas au bon endroit

    A la création dynamique, j'affecte mon ID à mon usercontrol car j'ai bien un identifiant unique issue de ma base de donnée.
    Au rechargement de ma page, peu importe l'ordre de tri, le même ID sera bien affecté au même usercontrol, ce qui aura pour effet de bien exécuté le code sur le bon contrôle

    Ouf, je suis sauvé, merci

    Bonne fêtes de fin d'année

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. positionner des usercontrol chargés dynamiquement
    Par sanouk dans le forum Windows Presentation Foundation
    Réponses: 3
    Dernier message: 19/12/2008, 23h35
  2. [c#]usercontrol chargé dynamiquement
    Par jp_75000 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 18/06/2006, 15h10
  3. Réponses: 1
    Dernier message: 16/06/2006, 16h44
  4. Pb avec un fichier js chargé dynamiquement
    Par KpTn dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 15/05/2006, 15h29
  5. [FLASH] Imprimer une image chargée dynamiquement
    Par penchu dans le forum Flash
    Réponses: 2
    Dernier message: 04/01/2006, 16h59

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