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 :

[ASP.NET 2.0][C#]problème d'héritage dropdownlist


Sujet :

ASP.NET

  1. #1
    Membre confirmé Avatar de heid
    Profil pro
    Inscrit en
    mai 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : mai 2002
    Messages : 388
    Points : 587
    Points
    587
    Par défaut [ASP.NET 2.0][C#]problème d'héritage dropdownlist
    Bonjour, je dois hériter d'un dropdownlist pour pouvoir y ajouter une proprieté texte. J'ai utilisé ce code :
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Text;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
     
    namespace GACControls
    {
        [System.Drawing.ToolboxBitmap(@"c:\b.bmp")]
        [DefaultProperty("Text")]
        [ToolboxData("<{0}:GACDropDownList runat=server></{0}:WebCustomControl1>")]
        public class GACDropDownList : System.Web.UI.WebControls.DropDownList
        { [Bindable(true)]
            [Category("GAC")]
            [DefaultValue("")]
            [Localizable(true)]
            public string GACAutorisation
            {
                get
                {
                    String s = (String)ViewState["GACBind"];
                    return ((s == null) ? String.Empty : s);
                }
     
                set
                {
                    ViewState["GACBind"] = value;
                }
            }
     
            protected override void RenderContents(HtmlTextWriter output)
            {
                output.Write(Text);
            }
     
            protected override void Render(HtmlTextWriter writer)
            {
                base.Render(writer);
            }
        }
    }
    Le dropDown list s'affiche bien en disign et execution mais je ne peux pas ajouter d'items... En disign ou en execution lorsque j'ajoute des itemps ils sont bien présent dans la collection mais ne sont pas affichés dans la page.
    Problème de render?

  2. #2
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    1 - Y'a un pb dans ton atrtibut TooolboxData.

    2 - Ca sert à quoi de faire un override de Render et d'appeler base.Render dedans ?

    3 - Oui t'as un problème de render.
    Tu remplaces le RenderContents par le rendu de ton texte, alorsz forcément, il va pas te faire le rendu des items.

    4 - Commence par essayer ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    namespace MyControls
    {
        [ToolboxData("<{0}:MyDropDownList runat=server></{0}:MyDropDownList>")]
        public class MyDropDownList: DropDownList
        {
        }
    }
    Et si ça fonctionne, rajoute ton "Text", puis reteste.
    Si ça fonctionne, fait d'autres modif et reteste.
    etc...

  3. #3
    Membre confirmé Avatar de heid
    Profil pro
    Inscrit en
    mai 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : mai 2002
    Messages : 388
    Points : 587
    Points
    587
    Par défaut
    en effet j'avais mal regardé , c'est le template de vs qui ma rajouté de code de malheu

    au final j'ajoute juste ca et ca marche :
    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
     
            [Bindable(true)]
            [Category("GAC")]
            [DefaultValue("")]
            [Localizable(true)]
            public string GACAutorisation
            {
                get
                {
                    String s = (String)ViewState["GACBind"];
                    return ((s == null) ? String.Empty : s);
                }
     
                set
                {
                    ViewState["GACBind"] = value;
                }
            }
    merci pour ta réponse.

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 25/11/2008, 12h02
  2. ASP.NET 2 - Global Resources problème
    Par phalgand dans le forum ASP.NET
    Réponses: 1
    Dernier message: 12/02/2008, 13h33
  3. [ASP.NET 2.0][C#] Problème avec textbox
    Par toinou62 dans le forum ASP.NET
    Réponses: 8
    Dernier message: 03/12/2007, 18h59
  4. Réponses: 1
    Dernier message: 28/05/2007, 12h12
  5. [ASP.NET 2.0][C#] Problème Crytal Report
    Par Louisa dans le forum ASP.NET
    Réponses: 2
    Dernier message: 23/02/2007, 10h42

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