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 :

[C#] Comment ajouter un item dynamiquement


Sujet :

ASP.NET

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 3
    Points : 1
    Points
    1
    Par défaut [C#] Comment ajouter un item dynamiquement
    Hello...

    J'ai besoin de vos lumières... je comprends vraiment pas le problème.
    J'ai une page ASPX relativement simple...
    Elle a 2 champs de texte et 1 bouton.
    Lorsque l'on clique sur le bouton, je veux afficher 1 checkbox que je veux creer dynamiquement par le code.

    J'ai une erreur qui dit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Control 'chkTest' of type 'CheckBox' must be placed inside a form tag with runat=server.
    Mon code C# d'ajout de check box est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CheckBox chk = new CheckBox();
                    chk.EnableViewState = true;
                    chk.Text = "TEXTE TEST";                
                    chk.ID = "chkTest";
                    Page.Controls.Add(chk);
    Avez vous une idée de quel est le problème ?

    D'avance grand merci

  2. #2
    Nouveau Candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Personne pour m'aiguiller ?

  3. #3
    Membre du Club
    Inscrit en
    Novembre 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 39
    Points : 44
    Points
    44
    Par défaut
    Salut,

    Regarde la page "aspx", elle doit ressembler à cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <body>
        <form id="form1" runat="server">
     
        </form>
    </body>
    Tous les controles .net (ceux qui commence par asp: et qui comporte une balise runat=server) doivent être placés dans une form qui contient une balise runat=server (ton message d'erreur te le dit), donc essai cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CheckBox chk = new CheckBox();
                    chk.EnableViewState = true;
                    chk.Text = "TEXTE TEST";                
                    chk.ID = "chkTest";
                    form1.Controls.Add(chk);
    J'espere que ton problème sera résolu,

    Greg.

  4. #4
    Nouveau Candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Alors merci !
    Comme ça marche effectivement mais j'ai un problème bizarre avec cette solution...
    Si à la suite de ça je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    foreach(Control c in form1.Controls)
    bizarrement j'ai tout mes controls ajouter en designtime, mais je ne vois pas le checkbox ajouter en runtime par le code.

    Bref le checkbox est bien visible sur la page... mais on dirait qu'il existe pas pour de vrai...

    Des idées `?

  5. #5
    Membre du Club
    Inscrit en
    Novembre 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 39
    Points : 44
    Points
    44
    Par défaut
    Essai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <body>
        <form id="form1" runat="server">
             <div id="div1" runat="server/>
     
        </form>
    </body>
    et puis bien sur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    
    CheckBox chk = new CheckBox();
                    chk.EnableViewState = true;
                    chk.Text = "TEXTE TEST";                
                    chk.ID = "chkTest";
                    div1.Controls.Add(chk);
    Mets uniquement ta checkbox dans ce div, et parcours les controles apres dans le div, tu devrais avoir uniquement 1 literralcontrol et une checkbox,

    Greg.

  6. #6
    Nip
    Nip est déconnecté
    Rédacteur

    Inscrit en
    Juin 2004
    Messages
    963
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 963
    Points : 1 076
    Points
    1 076
    Par défaut
    T'as besoin de declarer la creation de ton controle dans le OnInit() pour qu'il soit identifier comme controle de ta webform

Discussions similaires

  1. Comment ajouter plusieurs données dynamiques dans un item d'une listview
    Par Rohan21 dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 02/08/2014, 17h50
  2. Gwtext: comment ajouter un item dans ma combobox dynamiquement
    Par dadoukhane dans le forum GWT et Vaadin
    Réponses: 1
    Dernier message: 03/07/2008, 18h42
  3. [Team Foundation Server] Comment ajouter des Items ?
    Par Dadou74 dans le forum EDI/Outils
    Réponses: 1
    Dernier message: 27/07/2006, 16h36
  4. [système] Comment ajouter un item dans le context menu de Windows ?
    Par ddmicrolog dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 29/06/2005, 18h03

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