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

Dotnet Discussion :

[WebForms][User Controls] Problème pour accéder aux CSS


Sujet :

Dotnet

  1. #1
    Membre du Club
    Inscrit en
    Février 2004
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 107
    Points : 60
    Points
    60
    Par défaut [WebForms][User Controls] Problème pour accéder aux CSS
    Bonjour,

    Voila j'ai un petit souci avec les ASCX. J'utilise un même contrôle dans 2 page différents. Par exemple j'appelle mon control, MonControl.

    Je l'utilise dans
    - MonSite/index.aspx
    - MonSite/Fichier/page.aspx

    Mon problème est que dans mon control j'accéde à des images ou un CSS.
    - Pour MonSite/index.aspx, j'y accède de la manière suivante : "./img/photo.gif"
    - Pour MonSite/Fichier/page.aspx, j'y accède de la manière suivante : "../img/photo.gif"

    Mon problème est comme les pages utilisant mon ascx, ne se trouve pas dans un même répertoire (ou un même niveau), mon ascx ne trouve pas toujours les images.

    J'ai donc ajouté un attribut à mon control, sur lequel je mets soit "./" ou "../" suivant la page d'appel.
    Cela mon donne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <uc1:MonControl id="MonControl1" runat="server" mPath="./"></uc1:MonControl>
    Cela fonctionne parfaitement, même si je trouve la technique assez limite.
    Mon soucis est que MonControl, contient lui même un Control (MonSousControl) dans lequel il y a aussi des images ou css à récupérer.

    J'utilise la donc la même méthode en récupérant le mPath de MonControl et en le faisant passé comme mPath de MonSousControl

    Mon code est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <uc1:FMonSousControl id="MonSousControl"  mPath=<%=pathControl%> runat="server"></uc1:MonSousControl>
    Cette méthode ne peut pas fonctionner et me déclenche "Les balises serveur ne peuvent pas contenir des constructions <% ... %>". Il doit bien y avoir une solution propre pour utiliser sans problème les User Control dans des pages se trouvant à différents endroits.

    Merci d'avance

  2. #2
    Membre du Club
    Inscrit en
    Février 2004
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 107
    Points : 60
    Points
    60
    Par défaut
    C'est bon il fallait seulement que j'attribue mPath dans le Page_load de mon Control principal.

  3. #3
    Expert éminent
    Avatar de Ditch
    Inscrit en
    Mars 2003
    Messages
    4 160
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2003
    Messages : 4 160
    Points : 9 634
    Points
    9 634
    Par défaut
    Au lieu de te casser la tête, tu peux utiliser "~/img/photo.gif" ce qui signifie: répertoire de l'applic, puis répertoire img puis l'image. Quelque soit le niveau, ce qui sera généré sera correct.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/11/2009, 14h00
  2. Problèmes pour accéder aux tags de fichiers sous windows xp
    Par clakinette dans le forum Windows XP
    Réponses: 1
    Dernier message: 14/08/2008, 17h18
  3. Problème pour accéder aux champs d'un Item
    Par pcr92 dans le forum SharePoint
    Réponses: 3
    Dernier message: 16/10/2007, 12h18
  4. Problème pour accéder aux ordis du domaine
    Par alex_m94 dans le forum Windows Serveur
    Réponses: 16
    Dernier message: 18/09/2007, 15h45
  5. Problème pour accéder aux données ASP.net côté client
    Par mappy dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/07/2006, 15h10

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