begin process at 2010 03 11 16:48:17
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

WebForms

 > 

WebControl

 > 

Probléme d'enregistrements de controles ...


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probléme d'enregistrements de controles ...

mercredi 26 novembre 2008 à 18:16:00 | Probléme d'enregistrements de controles ...

momo3038

Bonjour !
Mon problème est assez simple :

Je souhaite que l'utilisateur puisse, via une dropdownlist, sélectionner le nombre d'entrée (Textbox) qu'il veut remplir.

Par exemple, s'il sélectionne 4 dans la dropdownList, 4 Textbox s'affichent ... Pour faire cela pas de soucis.

Le problème c'est pour l'enregistrement. En effet, mes contrôles étant dynamique, au moment de capter l'évènement clic, impossible de les récupérer ...

J'ai essayé diverses techniques (Repeater statique puis allocation des textbox, Récupération via Forms, FindControl, ...) pour réaliser ce système mais je n'ai pas trouvé de solution qui fonctionne.

Pouvez vous m'aider et me dire comme faut-il s'y prendre pour réaliser correctement cela ?

Merci d'avance !

Morgan
jeudi 27 novembre 2008 à 01:17:05 | Re : Probléme d'enregistrements de controles ...

jesusonline

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !

Bonsoir,

Comme je le dis souvent, il ne faut jamais faire de controles dynamiques à moins que l'on sache exactement ce que l'on fait.

Voici un petit exemple de ce que tu voudrais faire, cet exemple est simple à écrire et à comprendre lorsque le comprend parfaitement le mécanisme de viewstate et de cycle de vie de controle

    <div>
        <asp:TextBox ID="tbCount" runat="server" />
        <asp:button id="btnCreateTB" runat="server" onclick="btnCreateTB_Click" Text="Create" />
       
        <hr />
       
        <asp:Repeater ID="rptTB" runat="server">
            <ItemTemplate>
                <ul>
            </ItemTemplate>
            <ItemTemplate>
                <li>Value <%#Container.DataItem %> : <asp:TextBox ID="tbValue" runat="server" /></li>
            </ItemTemplate>
            <FooterTemplate>
                </ul>
            </FooterTemplate>
        </asp:Repeater>
       
        <asp:Button runat="server" ID="btnSave" onclick="btnSave_Click" Text="Save" />
        <div>
            <asp:Literal runat="server" ID="litValue" />
        </div>
       
    </div>


et dans le code behind :

public partial class _Default : System.Web.UI.Page
{
    protected void btnCreateTB_Click(object sender, EventArgs e)
    {
        int tbCountValue = 0;
        if (int.TryParse(tbCount.Text, out tbCountValue))
        {
            // permet de créer une collection d'entier quiservira de datasource [0, ..., n]
            IEnumerable<int> data = Enumerable.Range(0, tbCountValue);
            rptTB.DataSource = data;
            rptTB.DataBind();
        }
        else
        {
            // devrait également être vérifier via un validator
            throw new Exception("Incorrect value");
        }
    }

    protected void btnSave_Click(object sender, EventArgs e)
    {

        List<String> values = new List<string>();

        foreach (RepeaterItem item in rptTB.Items)
        {
            // ne pas oublier SelectedItem si besoin
            if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
            {
                TextBox tbValue = item.FindControl("tbValue") as TextBox;
                if (tbValue != null)
                {
                    values.Add(tbValue.Text);
                }
                else
                {
                    // log this
                    throw new Exception();
                }               
            }
        }

        litValue.Text = String.Join(" | ", values.ToArray());
    }
}



Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
jeudi 27 novembre 2008 à 13:21:32 | Re : Probléme d'enregistrements de controles ...

momo3038

Merci beaucoup pour ta réponse :) J'analyse et je teste tout cela.

Morgan
lundi 1 décembre 2008 à 10:24:44 | Re : Probléme d'enregistrements de controles ...

jlassi

Bonjour a tous,

en lisant ce code j'ai voulu le testé mais malheureusement j'avais ce message d'erreur : CS0103: Le nom 'Enumerable' n'existe pas dans le contexte actuel

Ligne 20 :             {
Ligne 21 : // permet de créer une collection d'entier quiservira de datasource [0, ..., n]
Ligne 22 : IEnumerable<int> data = Enumerable.Range(0, tbCountValue);
Ligne 23 : rptTB.DataSource = data;
Ligne 24 : rptTB.DataBind();

je veux savoir est ce qu'est c'est une erreur dans le code ou bien c'est mois que j'ai mal implémente ce bou de code

Merci
k_jlassi
mardi 2 décembre 2008 à 16:22:25 | Re : Probléme d'enregistrements de controles ...

momo3038

Bonjour,
Il faut ajouter, en haut de ta page .aspx :

using System.Collections.Generic;


Cette discussion est classée dans : controles, problème, textbox, enregistrements, probléme


Répondre à ce message

Sujets en rapport avec ce message

pagination de page ? [ par dji ] bonjour, j'ai un problème au niveau de la pagination: je n'arrive pas à passer au page suivant qui va afficher le reste de mes enregistrements Voici pagination de page ? [ par dji ] bonjour, j'ai un problème au niveau de la pagination: je n'arrive pas à passer au page suivant qui va afficher le reste de mes enregistrements Voici pagination de page ? [ par dji ] bonjour, j'ai un problème au niveau de la pagination: je n'arrive pas à passer au page suivant qui va afficher le reste de mes enregistrements Voici Probleme de recherche [ par thieu57 ] Hello,J'ai un petit problème...J'ai une fonction de recherche avec un textbox, une liste deroulante et un bouton pour envoyer.Est ce que l'on peut don Problème boucle et textbox avec asp.net [ par lmu ] Hello,J'ai une page (aspx) avec 10 textbox, ils sont nommé logiquement (texbox1, textbox2, texbox3 etc.)Dans le code je veux ensuite faire une boucle Probléme d'intégration d'un Textbox dans un multipage [ par Toucho ] Bonjour ,J'ai un problème lorsque je veux intégrer un Text box dans un multipage.Jé crée un multipage puis un pageview et en suite un textbox,Mais j'a Problème de datagrid + textBox [ par jagdjg ] Bonjour, j ai un datagrid que je remplit avec un datatable.j ai ajouté au datagrid une colonne checkBox.J ai un bouton qui devrait tester le checkBoxL ASP.Net : problème de Textbox [ par Suffren ] Bonjour,j'ai un problème avec des Textbox qui sont par défaut déclarées en "protected". Si je veux les utiliser dans une fonction, il faut qu'elles s Problème avec la free textbox (ASP NET) [ par sizzla68 ] BonjourMon probleme est que j'aimerais pouvoir récupérer le contenu saisie dans la freetextbox dans une variable de session sur la pression d'un bouto Problème couleur textbox [ par lenneth666 ] Bonjour dans uen textbox multiligne j'aimerais savoir comment fait ton pour mettre une ligne spécifique en couleur ?


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,543 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales