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#/Visual Studio 2008] Ajout dynamique


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2009
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Octobre 2009
    Messages : 117
    Par défaut [C#/Visual Studio 2008] Ajout dynamique
    Bonsoir,

    Déjà désolé si je ne suis pas dans le bon forum, je suis un peu perdu avec ce que je fais et je ne sais pas trop où poster (C# ? ASP.NET ? ...)

    Voilà j'ai un projet web à développer en C# avec Visual Studio 2008.

    Ma partie consiste à créer un formulaire pour créer des QCM.

    Le principe est tout con, on saisie le nom du QCM et l'utilisateur a accès à deux bouton : un bouton qui permet de créer des question et un autre à chacune de ces questions qui permet de créer des réponse (pour sa question).

    Ce que je voudrait c'est qu'a chaque clic sur le bouton de question, de nouveau label, text box et bouton avec procédure se créer dynamiquement. Idem pour les réponses. En gros je clic une fois ca me crée ma question 1, je clic une deuxième fois ca me crée ma question 2, je clic une fois sur le bouton de la question 1 ca me crée la première réponse possible, une deuxième fois la seconde réponse possible etc...

    Je pensais faire une div avec un id genre "questionnaire" dans laquelle je créerai une div par question (donc par clic) et partirai sur le même principe pour les réponses.

    Mais voilà, je suis gros débutant en C# et VS 2008 et je n'arrive pas à trouver comment faire pour créer dynamiquement des truc genre "<div></div>" ou encore "<asp:label></asp:label>", "<asp:textbox></asp:textbox>", etc... et les ajouter dans une div de ma page.

    Si vous aviez une réponse cela pourrait m'aider car à moins de mal chercher, je ne trouve pas mon bonheur sur le net.

    Merci d'avance.

    PS : petit ajout par rapport à ce que je demande, je cherche également à ajouter ces composant dynamiquement à la fin d'une div (genre ma div questionnaire) sans effacer ce qui est déjà à l'intérieur de celle-ci. Encore une fois merci d'avance.

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2009
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Octobre 2009
    Messages : 117
    Par défaut
    Re-bonsoir,

    Bon j'ai en partie réussi à faire ce que je veux, cad créer mes différent textbox, label etc dynamiquement.

    Mais je me retrouve confronté à un autre problème.

    Comme je l'ai, j'ai une div questionnaire, et à chaque clic sur le bouton, je veux ajouter une nouvelle question dans cette div (donc label, textbox etc) tout en gardant la précédente. J'ai réussi à le faire avec C# mais mon problème c'est que le code est éxécuté coté serveur, donc ca me créer une seule question et ca ne garde pas la précédente (ca crée tout le temps la même en fait).

    Pour cela il faudrait que je passe par du javascript, pour créer des champs qui fonctionneront après coté serveur (donc des <asp:label> etc).

    Es-ce possible ?

  3. #3
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2008
    Messages
    337
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 337
    Par défaut
    Utilise un repeater ou une dataList, tu crées un template (label textbox ect... ) et tu y ajoutes un item dès que tu veux ajouter une question.

    bonne continuation.

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2009
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Octobre 2009
    Messages : 117
    Par défaut
    Merci pour ta réponse.

    Par contre comme j'ai dit je suis vraiment un gros gros débutant la dedans... aurais tu un exemple de comment faire ça ?

    Je cherche en parallèle.

    Merci d'avance.

    EDIT :

    Je viens de rechercher vite fait et dur de trouver comment faire.

    Voilà mon body actuelle...

    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
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:Label ID="lNomQCM" runat="server" Text="Nom du QCM"></asp:Label>
            <asp:TextBox ID="tbNomQCM" runat="server"></asp:TextBox>
        </div>
        <div id="questionnaire" runat="server">
            <asp:Repeater ID="Repeater1" runat="server">
                <ItemTemplate>
                    <div>
                        <div>
                            <asp:Label ID="Label1" runat="server" Text="Intitulé de la question n°1"></asp:Label>
                            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                            <asp:Label ID="Label2" runat="server" Text="Points (réponse correcte)"></asp:Label>
                            <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
                            <asp:Label ID="Label3" runat="server" Text="Points (réponse incorrecte)"></asp:Label>
                            <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
                        </div>
                        <div>
                            <div>
                                <asp:Label ID="Label4" runat="server" Text="Réponse n°1"></asp:Label>
                                <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
                                <asp:CheckBox ID="CheckBox1" runat="server" />
                            </div>
                        </div>
                        <div>
                            <asp:Button ID="Button1" runat="server" Text="Ajouter une réponse" />
                        </div>
                    </div>
                </ItemTemplate>
            </asp:Repeater>
        </div>
        <div>
            <asp:Button ID="bAddQuestion" runat="server" Text="Ajouter une question" 
                onclick="bAddQuestion_Click" />
        </div>
        </form>
    </body>
    Je recherche comment faire les ajout avec les bouton. Mais déjà, suis-je bien partie ?

    EDIT 2 :

    J'ai trouver un bout de réponse sur le net...

    Pour le moment j'ai ça...

    Dans mon .aspx :

    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
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:Label ID="lNomQCM" runat="server" Text="Nom du QCM"></asp:Label>
            <asp:TextBox ID="tbNomQCM" runat="server"></asp:TextBox>
        </div>
        <div id="questionnaire" runat="server">
            <asp:Repeater ID="Repeater1" runat="server">
                <ItemTemplate>
                    <div>
                        <div>
                            <asp:Label ID="lIntituleQ" runat="server" Text="Question n°1"></asp:Label>
                            <asp:TextBox ID="tbIntituleQ" runat="server"></asp:TextBox>
                            <asp:Label ID="lCorrectQ" runat="server" Text="Points (réponse correcte)"></asp:Label>
                            <asp:TextBox ID="tbCorrectQ" runat="server"></asp:TextBox>
                            <asp:Label ID="lIncorrectQ" runat="server" Text="Points (réponse incorrecte)"></asp:Label>
                            <asp:TextBox ID="tbIncorrectQ" runat="server"></asp:TextBox>
                        </div>
                        <div>
                            <div>
                                <asp:Label ID="lQR" runat="server" Text="Réponse n°1"></asp:Label>
                                <asp:TextBox ID="tbQR" runat="server"></asp:TextBox>
                                <asp:CheckBox ID="cbQR" runat="server" />
                            </div>
                        </div>
                        <div>
                            <asp:Button ID="bAddReponseQ" runat="server" Text="Ajouter une réponse" />
                        </div>
                    </div>
                </ItemTemplate>
            </asp:Repeater>
        </div>
        <div>
            <asp:Button ID="bAddQuestion" runat="server" Text="Ajouter une question" 
                onclick="addQuestion" />
        </div>
        </form>
    </body>
    Dans mon .aspx.cs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    int nbQuestion = 1;
     
            protected void addQuestion(object sender, EventArgs e)
            {
                IEnumerable dataRepeater = Enumerable.Range(1,nbQuestion);
     
                nbQuestion = nbQuestion + 1;
     
                Repeater1.DataSource = dataRepeater;
                Repeater1.DataBind();
            }
    Mon problème est le même, le template est répété une seule fois. Je n'ai pas trouver comment en ajouter plusieurs.

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 05/01/2019, 23h25
  2. [Débutant] [Visual studio 2008]Combobox dynamiques
    Par Mykimix dans le forum Visual Studio
    Réponses: 2
    Dernier message: 18/09/2012, 09h17
  3. visual studio 2008 : ajouter un type de variable
    Par mumuri dans le forum Visual C++
    Réponses: 0
    Dernier message: 09/07/2010, 18h02
  4. [Visual Studio 2008] Ajouter un projet dans un dossier
    Par Sancha dans le forum VC++ .NET
    Réponses: 1
    Dernier message: 27/01/2010, 13h24
  5. Ajouter une refrence dans Visual studio 2008
    Par aallal dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 29/09/2008, 12h51

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