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 :

Référencement et utilisation d'un contrôle utilisateur


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Nixar
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 302
    Par défaut Référencement et utilisation d'un contrôle utilisateur
    Bonjour à tous,
    J'ai créé un contrôle utilisateur que je cherche à ajouter dynamiquement sur ma page. Le problème est que mon système ne le reconnait pas : le nom du contrôle n'est pas écrit en bleu comme n'importe quelle classe lors d'un cast. je précise que le contrôle et la page qui l'appelle sont dans le même répertoire pour le moment.

    POuvez-vous me dire pourquoi?


    Voici le code du UserControl :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
     
     
        public partial class ControlePanier : System.Web.UI.UserControl
        {
            public Photo Photo;
     
            protected void Page_Load(object sender, EventArgs e)
            {
     
            }
     
            protected void Suppression(object sender, EventArgs e)
            {
                Photo.SetPerime();
                this.Visible = false;
            }
        }
    VOici le code qui l'instancie et l'appelle

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     Control ControlePhotoPanier;
                foreach (Photo p in caddie.Contenu)
                {
                    ControlePhotoPanier = Page.LoadControl("ControlePanier.ascx");
                    ControlePhotoPanier.ID = p.PhotoId.ToString();
                    ControlePhotoPanier.Visible = !p.Perime;
                    ((ControlePanier)ControlePhotoPanier).Photo = p;
                    PanelPanier.Controls.Add(ControlePhotoPanier);
                }
    VOici le code de l'erreur :

    CS0246: Le type ou le nom d'espace de noms 'ControlePanier' est introuvable (une directive using ou une référence d'assembly est-elle manquante ?)
    Merci beaucoup !

    Nixar

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Si le contrôle est déclaré dans un autre projet, ajoute une référence à ce projet.
    Sinon, vérifie que tu as bien fait un using sur le namespace qui contient le contrôle

  3. #3
    Membre très actif
    Inscrit en
    Janvier 2004
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 208
    Par défaut
    Pour test

    Reference ton Control en parti HTML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%@ Reference Control="~/Control/ControlePanier.ascx"%>
    et lors de l'appel puisque ton UserControl s'appel: class ControlePanier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ControlePanier _ctl = (ControlePanier)Page.LoadControl("ControlePanier.ascx");
    ....
    PanelPanier.Controls.Add(ControlePanier);
    a plus

  4. #4
    Membre éclairé Avatar de Nixar
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 302
    Par défaut
    Merci de vos réponses à tous les 2.

    C'était le "reference" qui me manquait...

    Merci !!

    Nixar

  5. #5
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    dernier petit conseil : évite les noms de variables identiques au nom de la classe


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

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/06/2010, 11h36
  2. Utilisation de plusieurs contrôles utilisateur
    Par stefsas dans le forum ASP.NET
    Réponses: 1
    Dernier message: 31/05/2010, 11h26
  3. Réponses: 2
    Dernier message: 25/05/2010, 21h52
  4. Réponses: 2
    Dernier message: 06/12/2007, 19h47
  5. Sécurité Access, utiliser sa propre table utilisateur
    Par flash2590 dans le forum Sécurité
    Réponses: 2
    Dernier message: 12/12/2005, 16h47

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