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

C# Discussion :

Transfert items dans textBox [Débutant]


Sujet :

C#

  1. #1
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juin 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Juin 2013
    Messages : 12
    Points : 10
    Points
    10
    Par défaut Transfert items dans textBox
    Bonjour,

    J'ai un lisView en mode LargeIcon avec 10 nombres et 10 textBox d'un autre coté. Je voudrais transférer les nombres de mon listView dans mes textBox items 1 dans textBox1 etc.

    Et là je bloque. Une aide svp ?

    Cordialement

  2. #2
    Membre éprouvé Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Points : 1 188
    Points
    1 188
    Par défaut
    Bonjour,

    J'ai lu ton post et là je bloque.
    Un peu plus d'explications et un bout de code seraient les bienvenus.

    La tâche est simple en soit, mais qu'as-tu fait? Où bloques-tu?

    En fonction de ce que tu as fait, de la manière dont tu as modélisé ton programme, la solution ne sera pas la même.

    Je t'invite à lire ou relire les règles du forum.
    Un âne se croit savant parce qu'on le charge de livres (proverbe américain)

    N'oubliez pas de avant de
    Pas de question techniques par MP, c'est contre la philosophie du forum

  3. #3
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juin 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Juin 2013
    Messages : 12
    Points : 10
    Points
    10
    Par défaut
    Bonjour,

    Je peut pas expliquer mieux j'ai dans mon listView dix nombres que je voudrais au click d'un button réécrire dans le tableau de textBox. Donc j'ai bouclé sur le listView puis sur le tableau de string qui contient les textBox mais le code est pas bon et je sais pas comment faire c'est là que je bloque.

    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
    resultat = new string[] { T01.Text, T02.Text, T03.Text, T04.Text,
                T05.Text, T06.Text, T07.Text, T08.Text, T09.Text, T10.Text};
     
     
     
                 for (k = 0; k < relever_numeros.Items.Count; k++)
                    {
                        for (j = 0; j < resultat.Length; j++)
                        {
     
                                string donne = relever_numeros.Items[k].Text;
     
                        resultat[j] = donne.ToString();
     
                        }
     
                }

  4. #4
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juin 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Juin 2013
    Messages : 12
    Points : 10
    Points
    10
    Par défaut
    Je voudrais en réalité raccourcir ce code proprement.

    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
     resultat = new string[] { T01.Text, T02.Text, T03.Text, T04.Text,
                T05.Text, T06.Text, T07.Text, T08.Text, T09.Text, T10.Text,
                T11.Text, T12.Text, T13.Text, T14.Text,
                T15.Text, T16.Text, T17.Text, T18.Text, T19.Text, T20.Text};
     
                /* */
     
                 for (k = 0; k < relever_numeros.Items.Count; k++)
                    {
     
     
                        T01.Text = relever_numeros.Items[0].Text;
                        T02.Text = relever_numeros.Items[1].Text;
                        T03.Text = relever_numeros.Items[2].Text;
                        T04.Text = relever_numeros.Items[3].Text;
                        T05.Text = relever_numeros.Items[4].Text;
                        T06.Text = relever_numeros.Items[5].Text;
                        T07.Text = relever_numeros.Items[6].Text;
                        T08.Text = relever_numeros.Items[7].Text;
                        T09.Text = relever_numeros.Items[8].Text;
                        T10.Text = relever_numeros.Items[9].Text;
                        T11.Text = relever_numeros.Items[10].Text;
                        T12.Text = relever_numeros.Items[11].Text;
                        T13.Text = relever_numeros.Items[12].Text;
                        T14.Text = relever_numeros.Items[13].Text;
                        T15.Text = relever_numeros.Items[14].Text;
                        T16.Text = relever_numeros.Items[15].Text;
                        T17.Text = relever_numeros.Items[16].Text;
                        T18.Text = relever_numeros.Items[17].Text;
                        T19.Text = relever_numeros.Items[18].Text;
                        T20.Text = relever_numeros.Items[19].Text;
     
     
     
                }

  5. #5
    Membre confirmé Avatar de Jabbal'H
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2004
    Messages : 403
    Points : 580
    Points
    580
    Par défaut
    Tu pourrais le faire directement via Binding, par exemple un truc comme çà fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <TextBox Name="Txt1" Text="{Binding Path=Test[0]}" Height="25" Width="115" />
    Avec une classe Bindé sur le context, les textbox se mettent à jour
    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
     
    public class TestTab : INotifyPropertyChanged
        {
            private string[] test = new string[2];
            public string[] Test
            {
                get
                {
                    return this.test;
                }
                set
                {
                    this.test = value;
                    this.NotifyProperty("Test");
                }
            }
     
            public TestTab()
            {
                test[0] = "test1";
                test[1] = "test2";
            }
     
            public void UpdateRec(int index, string value)
            {
                test[index] = value;
                this.NotifyProperty("Test");
            }
     
     
            #region INotifyPropertyChanged Membres
     
            public event PropertyChangedEventHandler PropertyChanged;
     
            public void NotifyProperty(string p)
            {
                if (PropertyChanged != null)
                {
                    PropertyChanged(this,new PropertyChangedEventArgs(p));
                }
            }
     
            #endregion
        }
    Après dans ta boucle, tu met simplement à jour le tableau
    Un truc dans ce style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for (k = 0; k < relever_numeros.Items.Count; k++)
    {
        this.testTab.UpdateRec(k,relever_numeros.Items[k].Text);
    }
    Si tu veux optimiser, tu ne lance pas la notif à chaque maj, mais une fois qu'elles sont toutes finie.
    Et si tu ne connais pas forcément le nombre, tu peux passer par une liste
    " Je préfère comprendre les gens qui ne me comprennent pas "

  6. #6
    Expert confirmé
    Inscrit en
    Avril 2008
    Messages
    2 564
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 564
    Points : 4 441
    Points
    4 441
    Par défaut
    bonjour
    Si tu est en Winfom l'idee de les binder est interessante...

    Neanmoins ,il faut virer le tableau au profit d'un list<>....
    Ensuite on peut les recuperer et les binder:

    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
     
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
     
    namespace WinCopiieListView
    {
        public partial class Form1 : Form
        {
     
            // 'un list<> est plus approprie qu'un tableau 
            private List<TextBox> l = new List<TextBox>();
            public Form1()
            {
                InitializeComponent();
            }
     
            private void button1_Click(object sender, EventArgs e)
            {
                //fill listView1
                Random rnd = new Random() ;
                for (int i = 0; i < 10 ; i++)
                {
                    ListViewItem lvitem = new ListViewItem(rnd.Next(50, 1000).ToString());
                    listView1.Items.Add(lvitem);
                }
     
                // recupere les textboxes dissimines sur le form
                Control ctl = this;
                while (ctl !=null)
                {
                    if (ctl.GetType()  ==typeof( TextBox))
                    {
                        l.Add((TextBox)ctl);
                    }
                    ctl = this.GetNextControl(ctl,true );
                }
     
                //les binds chacun à un listviewitem  
                for (int i = 0; i < l.Count ; i++)
                {
                    l[i].DataBindings.Add("Text", listView1.Items[i], "Text");
                }
            }
        }
    }
    bon code...

  7. #7
    Membre confirmé Avatar de Jabbal'H
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2004
    Messages : 403
    Points : 580
    Points
    580
    Par défaut
    Oups ! j'ai même pas demandé si c'était du winform ou WPF ! autant pour moi !
    " Je préfère comprendre les gens qui ne me comprennent pas "

  8. #8
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juin 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Juin 2013
    Messages : 12
    Points : 10
    Points
    10
    Par défaut
    Merci pour vos réponse.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 11/02/2009, 06h33
  2. [VB.NET] Sauvegarde dans TextBox des logons utilisés
    Par stephane93fr dans le forum ASP.NET
    Réponses: 3
    Dernier message: 27/10/2005, 11h00
  3. [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, 17h03
  4. Suppression d'item dans une arborescence
    Par jonzuzu dans le forum MFC
    Réponses: 2
    Dernier message: 24/02/2004, 17h45
  5. Réponses: 2
    Dernier message: 17/08/2003, 20h07

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