Inscrire le résultat d'une TextBox dans une autre.

loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 - 1 févr. 2008 à 14:18
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 - 3 févr. 2008 à 19:01
<hr style="COLOR: #d1d1e1" size="1" />
<!-- / icon and title -->
<!-- message -->

Bonjour à tous,

Je travaille sous VisualStudio en C#.

J'ai 2 fenêtre dont la première permet de rentrer des informations dans de TextBox et ma deuxième fenêtre me permet de les rinscrire pour ensuite l'imprimer.

EXEMPLE :
1er fenêtre --> NouvelleIntervention
2éme fenêtre --> FicheImprimable.

Par exemple, dans ma 1er fenêtre j'ai une TextBox se nommant "NumInter" et je souhaiterais que le résultat de cette TextBox s'affiche dans une TextBox ou un label de ma deuxième fenêtre.

Donc, ce que j'aimerais savoir :
* comment inscrire dans la TextBox le résultat de ma TextBox "NumInter"??
* pour faire ce que je souhaite, je me demande ce qui serait le plus approprié pour faire ce que je souhaite c'est à dire label ou TextBox??

merci d'avance!!

13 réponses

lassaad83 Messages postés 148 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 1 décembre 2009
1 févr. 2008 à 15:05
Si je reprend ton exemple de "NouvelleIntervention" et "FicheImprimable" je te consiel de mettre des label.
Après pour pouvoir passer des variable entre les deux fenêtres tu a le choix : soit tu change la visibilité des control se trouvant dans la form FicheImprimable en public comme ça tu poura y acceder a partir de la fenetre NouvelleIntervention (déconseiller mais ça marche)

<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>







FicheImprimable
F2 =
new


FicheImprimable
();
F2.lbltext.Text = textBox1.Text;
F2.Show();




ou bien tu déclare dans la classe NouvelleIntervention un attribut public qui contiendra les valeurs de tes TextBox :








public


partial


class


NouvelleIntervention
:
Form
{
public static string
sValeurNumInter; }





Qu’il faudra penser à remplir par la valeur de ton TextBox

après lors du chargement de ta fenêtre FicheImprimable, il ne te reste plus qu'a initialiser les labels avec tes variables comme suit :





private


void
Form2_Load(
object
sender,
EventArgs
e)
{ lbltext.Text =
NouvelleIntervention

.sValeurNumInter; }








X
x
X
Enjoy & Get Connected
X
x
X
0
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
1 févr. 2008 à 15:43
Le problème c'est qu'il n'y a pas que des résultats de textBox a récupéré venant de la fenêtre NouvelleIntervention, il y a aussi des ComboBox.

Donc cela change quelque chose au procéder??
Puis je comprend pas trop ce que t'entend par :
        publicpartialclassNouvelleIntervention: Form        { public static stringsValeurNumInter; }<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

merci d'avance!!
0
lassaad83 Messages postés 148 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 1 décembre 2009
1 févr. 2008 à 16:07
Non ça ne change rien au procedé, du moment que t'as une variable pour chaque control (textbox, Combo...).

Exemple tu as 3 control TextBox1, TextBox2, Combo1.
Dans le code de ta fenetre NouvelleIntervention qui n'ai rien d'autre qu'une classe en fait et bien tu va declarer trois variable (car tu as 3 control dans l'exemple):

public static stringsValeurTextBox1;
public static stringsValeurTextBox2;
public static stringsValeurCombo1;

Après tu peut par exemple lors du click sur le bouton de la fenetre NouvelleIntervention qui te fera passer dans la fenetre FicheImprimable mettre ce genre de code:

this.ValeurTextBox1 = TextBox1.Text;
this.ValeurTextBox2 = TextBox1.Text;
this.ValeurValeurCombo1 = ValeurDropDL1.SelectedValue.ToString();

FicheImprimableF2 = newFicheImprimable();
F2.Show();

privatevoidFicheImprimable_Load(objectsender, EventArgse)

   lbltextbox1.Text = NouvelleIntervention.ValeurTextBox1 ; 
   lbltextbox2.Text = NouvelleIntervention.ValeurTextBox2 ; 
   lbltextCombo1.Text = NouvelleIntervention.ValeurCombo1 ;

}

plus clair que ça ça va être dur  ...

XxX Enjoy & Get Connected XxX
0
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
1 févr. 2008 à 16:11
ok, merci pour cette réponse que je trouve assez claire. Après vais-je y arrivé, je te tien au courant!!

merci beaucoup!!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 59
1 févr. 2008 à 17:03
Voir un petit exemple complet ici:
http://www.csharpfr.com/codes/PASSAGE-PARAMETRES_26735.aspx

<hr />
-My Blog-
0
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
1 févr. 2008 à 17:10
ok, je regarderait cela après avoir réglé un autre problème qui m'intrigue.
Si ca t'intérrésse de savoir lequel que c'est va voir pluto sur : http://www.developpez.net/forums/showthread.php?p=2913096#post2913096

cordialement
0
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
2 févr. 2008 à 10:24
J'ai essayé de faire ce que tu ma expliqué "lassaad83" mais je vois pas comment je peux remplacer 'ValeurTextBox' vu que la valeur dépend de ce que l'utilisateur aura choissit.

merci d'avance pour votre aide!!
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 59
2 févr. 2008 à 10:38
Je ne comprends pas pourquoi tu ne te sers pa de l'exemple que je t'ai donné (le lien).
Tu as sur cette source un exemple de passage de paramètres entre deux forms...

<hr />
-My Blog-
0
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
2 févr. 2008 à 10:42
parce que je voulais commencer par essayé de faire la méthode de mister lassaad83 car il me la donné avant.

Mais bon je vais essayer par la tienne car je vois que tu veux que je m'en serve a tout pris!! LOL.
0
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
2 févr. 2008 à 11:25
J'ai essayé de faire par rapport a l'exemple que tu ma fournit par le lien mais j'arrive pas a voir ce que je dois mettre... car trop de ligne tue ma santé!!LOL.

Sérieusement je péte un cable pas contre ton lien mais contre moi car j'y arrive pas. J'ai commencé a faire ceci :
Code :
 


private
void InitializeComponent()


{



this
.lstViewUser =

new
System.Windows.Forms.ListView();




this
.lstViewUser.Columns.AddRange(

new
System.Windows.Forms.ColumnHeader[] {




this
.columnHeader1,




this
.columnHeader2,







this
.columnHeader3});




this
.lstViewUser.FullRowSelect =

true
;




this
.lstViewUser.Location =

new
System.Drawing.Point(16, 16);




this
.lstViewUser.MultiSelect =

false
;




this
.lstViewUser.Name = "lstViewUser";




this
.lstViewUser.Size =

new
System.Drawing.Size(408, 264);




this
.lstViewUser.TabIndex = 0;




this
.lstViewUser.View = System.Windows.Forms.View.Details;




//








// columnHeader1






//






this
.columnHeader1.Text = "NumInter


this
.columnHeader1.Width = 100;


//






// columnHeader2






//






this
.columnHeader2.Text = "telCtact


this
.columnHeader2.Width = 100;


//






// columnHeader3






//






this
.columnHeader3.Text = "NumClt


this
.columnHeader3.Width = 204;

tout d'abord pour cela,  je vois pas comment résoudre les problème qui y sont liés :




erreur lié au code précédent :

C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(126): 'SuiviClient_Distrib_Info.NouvelleIntervention' ne contient pas de définition pour 'lstViewUser'
C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(116): 'SuiviClient_Distrib_Info.NouvelleIntervention' ne contient pas de définition pour 'columnHeader1'
C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(117): 'SuiviClient_Distrib_Info.NouvelleIntervention' ne contient pas de définition pour 'columnHeader2'
C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(140): 'SuiviClient_Distrib_Info.NouvelleIntervention' ne contient pas de définition pour 'columnHeader3'
C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(124): 'SuiviClient_Distrib_Info.NouvelleIntervention' ne contient pas de définition pour 'lstViewUser'

Ensuite je te met le code du bouton : private

void Imprimer_Click(
object sender, System.EventArgs e){

// RECUPERER LA LISTE DES MACHINES QUI ONT POUR NUMERO NUMMACHINE.TEXT
.............................................................

if(
this.lstViewUser.Items.Count > 0)
// S'il y a au moins un élément{

// Alors on créer un clientImprimable I =

new Imprimable();

// On récupère le premier élément du listViewListViewItem lvi =

this.lstViewUser.Items[0];

// On affecte maintenant les valeurs à notre client :I.NumInter = lvi.SubItems[2].Text;

I.NumClt = lvi.SubItems[1].Text;

I.telCtact = lvi.Text;

// On créer la nouvelle form en y passant le paramètreFicheImprimable FI =

new FicheImprimable(I);

/* Ici on s'abonne à l'event qui nous permettra de savoir quand et quoi ajouter dans notre* listView */

FI.Client_Added +=

new FicheImprimable.AddClientEventHandler(
this.newUser_Client_Added);FI.ShowDialog();

// On l'affiche}

}

puis je comprend pas d'ou vient ceci :  'Client_Added'   ?? sachant qu'il me donne l'erreur suivante : C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(783): 'SuiviClient_Distrib_Info.FicheImprimable' ne contient pas de définition pour 'Client_Added'

et il me dit les erreurs suivantes :
C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(780): Le nom 'I' n'existe pas dans la classe ni dans l'espace de noms 'SuiviClient_Distrib_Info.NouvelleIntervention'
C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(778): Le type ou le nom d'espace de noms 'I' est introuvable (une directive using ou une référence d'assembly est-elle manquante ?)
C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(772): Le type ou le nom d'espace de noms 'Imprimable' est introuvable (une directive using ou une référence d'assembly est-elle manquante ?)

désolé de t'emportuné.

merci d'avance pour tes conseils, ton aide......
0
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
2 févr. 2008 à 11:32
J'ai réussit a régler les problème des HeaderColumn et lstView (c'est à dire la non définition.)

merci d'avance
0
lassaad83 Messages postés 148 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 1 décembre 2009
3 févr. 2008 à 13:24
L'exemple donnée par Bidou est très bien.

XxX Enjoy & Get Connected XxX
0
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
3 févr. 2008 à 19:01
J'en doute pas lassaad83 que l'exemple de bisou est pas mal mais c'est pas pour ca que j'ai résol les problème dont je parle ci-dessus.

merci a tous en attente de votre aide si possible
0