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 :

D'une TextBox a l'autre


Sujet :

ASP.NET

  1. #1
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut D'une TextBox a l'autre
    Salut a tous,

    Je suis un peu coincé sur mon apli car je ne sais pas comment faire pour résoudre un probléme...je me tourne donc vers vous pour vous demandez conseil...

    Dans mon apli...l'utilisateur rentre dans une TextBox un chiffre. Il valide et sa affiche autant de TextBox dans l'apli que le nombre qu'il a rentre (ex : 1éreTextBox il entre 12 alors l'apli affichera 12 TextBox)

    J'aimerais que si l'utilisateur écrit dans la 1ére TextBox "Salut", dans toutes les autre TextBox il est écrti "Salut"...mais si dans la seconde il écrit "Moi", j'aimerais que dans toutes les autes TextBox il est écrit "Moi" sauf dans la 1ére..et ainsi dessuite...

    Avez-vous compris ? suis-je assez clair ?

    Voila mon code d'affichage des TextBox :

    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
    protected void nbheureTextBox_TextChanged(object sender, EventArgs e)
        //Affichage des TextBox
        {
            ArrayList liste_nom = new ArrayList();
            for (int i = 0; i <= Convert.ToInt64(nbheureTextBox.Text) - 1; i++) //initialise le tableau des noms des textbox réclamées
            {
                liste_nom.Add("text_box_child" + i);
            }
     
            for (int j = 0; j <= liste_nom.Count - 1; j++)
            {
                TextBox modele = new TextBox();
                //modele.Attributes.Add("onclick", "this.value = '';");
                //modele.Attributes.Add("onchange", "this.disabled = true;");
                modele.ID = liste_nom[j].ToString();
                modele.Text = "Heure n° " + Convert.ToInt64(j + 1);
                modele.Width = 500;
                modele.Height = 30;
                modele.AutoPostBack = true;
                //modele.Name = String.Format("txbHeure{0}", j++);
                form1.Controls.Add(modele);
            }
        }
    Merci si vous le savez de me dire comment faire...
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Points : 780
    Points
    780
    Par défaut
    Il faut que tu affectes un evennement TextChanged à la TextBox qui prend un chiffre.

    Puis tu affecte un autre evennement TextChanged commun a toute les textbox qui contiendront des lettres.

    Dans ce nouvel event, tu récupère l'ID du sender (le TextBox), tu trim pour ne récupérer que le numero, puis dans une boucle -de ce numero au nombre total de texbox- tu réécrit son propre text.
    Tu va donc devoir stocker le nombre de textbox, ou alors detecter si la textbox existe (si elle nexiste pas, c'est que tu as deja tout parcourut)

  3. #3
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    Merci de m'avoir répondu

    Déja je ne comprend pas tout mais ça si c'était nouveau sa se serais...

    Si tu veux j'ai un peu de mal car les TextBox sont comment dire...non physique (si tu vois ce que je veux dire) en gros on peu pas cliker dessu et rajouter du code a l'interieur c'est un peu sa qui me dérange pour cette apli...
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Points : 780
    Points
    780
    Par défaut
    non statique tu veux dire? Elles ne sont pas présente dans le Deigner, tu dois les gérer dynamiquement?

    C'est pour ca que c'est plus intéressant

    Tiens ca peux t'aider j'avais répondu à un type ici sur les TextBox, les ID et l'event commun :
    http://www.developpez.net/forums/sho...d.php?t=353732

  5. #5
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    Citation Envoyé par Chubyone
    non statique tu veux dire? Elles ne sont pas présente dans le Deigner, tu dois les gérer dynamiquement?

    C'est pour ca que c'est plus intéressant

    Tiens ca peux t'aider j'avais répondu à un type ici sur les TextBox, les ID et l'event commun :
    http://www.developpez.net/forums/sho...d.php?t=353732
    Voila c'est exactemen ça !!! Plus interessant mais aussi plus DUR !!!
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  6. #6
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    C'est pas exactement le méme probléme si ? et sa ne répondrais pas a toute ma question si ?

    Merci pour tes réponces...
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Points : 780
    Points
    780
    Par défaut
    Non, c'est juste pour utiliser le meme event parmis les TextBox qui prendra des phrases.

    En fait, il faudrait peut etre mieux créer une collection de Textbox que tu ajoutes à ta form.
    En conservant ta collection en membre. Tu y aura toujours accès simplement ensuite.

  8. #8
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    Je suis désolé mais je comprend pas...
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  9. #9
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    Help please
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Points : 780
    Points
    780
    Par défaut
    Essaye ca :

    Aspx :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>Page sans titre</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True" OnTextChanged="TextBox1_TextChanged"></asp:TextBox><br />
        </div>
        </form>
    </body>
    </html>
    CodeBehind :
    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
     
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Collections.Generic;
    using System.Diagnostics;
    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;
     
    namespace TONNAMESPACE
    {
        public partial class WebForm1 : System.Web.UI.Page
        {
     
            private static IList<TextBox> m_kIColTxBx = new List<TextBox>();
     
            protected void Page_Load( object sender, EventArgs e )
            {
                AddTextBox( m_kIColTxBx );
            }
     
            protected void TextBox1_TextChanged( object sender, EventArgs e )
            {
                Debug.WriteLine( "TextBox1_TextChanged ######" );
                this.RemoveTextBox( m_kIColTxBx );
     
                try
                {
                    int iNbtxtBx;
                    if ( Int32.TryParse( ( (TextBox)( sender ) ).Text, out iNbtxtBx ) )
                    {
                        m_kIColTxBx.Clear();
                        for ( int i = 0; i < iNbtxtBx; ++i )
                        {
                            TextBox kTxBx = new TextBox();
                            kTxBx.ID = "TextBox_" + i.ToString();
                            kTxBx.Text = "Heure n° " + i.ToString();
                            kTxBx.Height = 30;
                            kTxBx.Width = 500;
                            kTxBx.Visible = true;
                            kTxBx.Enabled = true;
                            kTxBx.AutoPostBack = true;
     
                            m_kIColTxBx.Add( kTxBx );
     
                        }
                        AddTextBox( m_kIColTxBx );
                    }
     
                }
                catch ( Exception exc )
                {
                    Debug.WriteLine( "ERROR : " + exc );
                }
            }
     
            protected void TextBoxPhrase_TextChanged( object sender, EventArgs e )
            {
                Debug.WriteLine( " ###### TextBoxPhrase_TextChanged" );
     
                this.RemoveTextBox( m_kIColTxBx );
                TextBox kTxBx = ( (TextBox)( sender ) );
                int iStart = m_kIColTxBx.IndexOf( kTxBx );
                for ( int i = iStart; i < m_kIColTxBx.Count; ++i )
                {
                    m_kIColTxBx[i].Text = kTxBx.Text;
                }
                AddTextBox( m_kIColTxBx );
            }
     
            protected void AddTextBox( IList<TextBox> TextBoxList )
            {
                IEnumerator kEnumerator = TextBoxList.GetEnumerator();
                TextBox kTxBx;
                while ( kEnumerator.MoveNext() )
                {
                    kTxBx = ( (TextBox)( kEnumerator.Current ) );
                    kTxBx.TextChanged += new EventHandler( this.TextBoxPhrase_TextChanged );
                    this.form1.Controls.Add( kTxBx );
                }
            }
     
            protected void RemoveTextBox( IList<TextBox> TextBoxList )
            {
                IEnumerator kEnumerator = TextBoxList.GetEnumerator();
                while ( kEnumerator.MoveNext() )
                {
                    this.form1.Controls.Remove( ( (TextBox)( kEnumerator.Current ) ) );
                }
            }
        }
    }
    Il doit y avoir mieux, mais la je fais juste joujou avec les objets, c'est peut etre un peu bourrin

  11. #11
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    Merci d'avoir répondu...

    J'ai essayé de faire ce que tu ma donné sur un nouvelle page pour comprendre un peu avant de l'adapter a mon code et il m'envoi des erreus est-ce normal...???
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Points : 780
    Points
    780
    Par défaut
    Bein ca dépends des erreurs^^

    N'oublis pas les namespace manquant, ni d'adapter le nom de page.

    Je ne pense pas que ce soit la meilleure solution... En fait je m'en suis un peu servit pour faire des tests persos et comprendre quelques notions...

  13. #13
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    Bonjour et merci de t'interresser a mon probléme déja...

    Pour les erreurs il y en a plusieurs pourtant j'ai copier/coller ce que tu m'avais donner dans le but de comprendre avant de'adapter a mon code...

    Erreur 1
    'ASP.default_aspx.GetTypeHashCode()'*: aucune méthode appropriée n'a été trouvée pour la substitution ligne 389
    Erreur 2
    'ASP.default_aspx.ProcessRequest(System.Web.HttpContext)'*: aucune méthode appropriée n'a été trouvée pour la substitution ligne 393
    Erreur 3
    'ASP.default_aspx' n'implémente pas le membre d'interface ligne143
    Erreur 4
    Assurez-vous que la classe définie dans ce fichier de code correspond à l'attribut 'inherits' et qu'elle étend la classe de base appropriée (exemple*: Page ou UserControl).
    Voila
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  14. #14
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Points : 780
    Points
    780
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="TONNAMESPACE.WebForm1" %>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    Tu as bien ton en tete ainsi sur l'aspx?

    Commence par une page entierement vierge de tout, appellé WebForm1

  15. #15
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    J'ai ça en entête...

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  16. #16
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Points : 780
    Points
    780
    Par défaut
    Pour simplifier : Créé une nouvelle page appellé WebForm1 et adapte le namespace du code au tien.

  17. #17
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    En fait je développe avec Ajaxtoolkit sa change quelque chose dans la réalisation de ce sujet ?
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  18. #18
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Points : 780
    Points
    780
    Par défaut
    Oui et non.
    degage AJAX pour l'instant, créer une simple page vierge.. Parce que ca va compliqué les choses apres.

    En fait ce truc là peu se faire en javascript, mais si tu veux récupérer les valeurs ca va etre plus chiant...

  19. #19
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    Oui car aprés que je serais arriver a faire ça faut que je récupére ces données dans une base de donnée...
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



  20. #20
    Membre régulier Avatar de nimois3O
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2007
    Messages : 183
    Points : 70
    Points
    70
    Par défaut
    C'est normal qu'il mouvre une page App_Web_rxnt658g.0.cs ???
    "Ne faites pas à autrui ce que vous pouvez faire le jour même."

    [Francis Blanche]



Discussions similaires

  1. Réponses: 4
    Dernier message: 04/04/2011, 11h46
  2. Affichage du contenu d'une textbox d'une autre form
    Par maxmarie dans le forum VB.NET
    Réponses: 8
    Dernier message: 13/06/2007, 16h23
  3. Acceder a une TextBox qui se trouve sur une Autre Form
    Par le_contact dans le forum Windows Forms
    Réponses: 15
    Dernier message: 14/04/2007, 00h10
  4. Réponses: 2
    Dernier message: 18/12/2006, 19h04
  5. [VB6]Creer un autre TextBox à partir d'une Textbox Existante
    Par bb62 dans le forum VB 6 et antérieur
    Réponses: 24
    Dernier message: 18/01/2006, 08h20

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