Return

Résolu
bip98 Messages postés 104 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 29 avril 2008 - 11 avril 2005 à 15:46
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 - 12 avril 2005 à 11:39
Bonjour, bonjour,

J'ai un petit problème basic.. pour retourner une valeur..

J'appel un Winform à qui j'envoie 2 paramètres... mais j'aimerais qu'il m'en retourne un ! comment faire.. pour l'envoie pas de problème..

Ca se présente comme ca pour l'envoie:

n_Formes myForm = new n_Formes(axe_point, v_ind);
myForm.Show();

J'aimerais qu'il me retourne v_ind (int). Comment s'y prendre ?

17 réponses

Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
11 avril 2005 à 16:16
dans ta fenetre :
private int _v_ind;
public int v_ind
{

get
{
return _v_ind;
}
set
{
_v_ind = value;
}
}

dans la fenetre qui appelle

if(lafenetre.showdialok()==dialogresult.ok)
{
int recuperemavaleur = lafenetre.v_ind;
}


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
3
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
12 avril 2005 à 09:23
J'avais donné cette réponse a un autre poste. Avec ca tu devrais comprendre.




namespace DialogRslt

{



public class Form1 : System.Windows.Forms.Form

{

Button b1 = new Button();

public Form1()

{

InitializeComponent();

}



private void DisCoucou()

{

MessageBox.Show("coucou");

}



private void InitializeComponent()

{

b1.Click += new EventHandler(b1_Click);

this.Controls.Add(b1);

}



private void b1_Click(object sender, EventArgs e)

{

Form2 f2 = new Form2();

if(f2.ShowDialog() == DialogResult.OK) DisCoucou();

}



[STAThread]

static void Main()

{

Application.Run(new Form1());

}

}



public class Form2 : Form

{

Button b1 = new Button();

public Form2()

{

InitializeComponent();

}



private void InitializeComponent()

{

b1.Click+=new EventHandler(b1_Click);

this.Controls.Add(b1);

}



private void b1_Click(object sender, EventArgs e)

{

this.DialogResult = DialogResult.OK;

this.Close();

}

}



}

Mx
3
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
12 avril 2005 à 10:57
"la variable v_recupvalue elle sert a quoi ?" => bah je sais pas, c'est ton code, donc tu devrais le savoir



Tu as une variable v_ind dans ta form principale et dans n_form, c'est ca ?

parce qu'a ce moment la, tu devrais mettre :



n_Formes myForm = new n_Formes(axe_point, v_ind);
if(myForm.ShowDialog() == DialogResult.OK)
{
this.v_ind = myForm.v_ind;
}




Mx
3
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
11 avril 2005 à 15:51
le mieux est de faire une propriete sans ta fenetre que tu recupere depuis ta fenetre appelante...


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
0

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

Posez votre question
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
11 avril 2005 à 16:01
Tu fais une propriété sur ta form puis tu l'appelles via showDialog (la form)

::|The S@ib|::
MVP C#.NET
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
11 avril 2005 à 16:04
oui j'avais oublier de preciser le showdialog...


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
0
bip98 Messages postés 104 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 29 avril 2008 1
11 avril 2005 à 16:12
Vous auriez un petit exemple par hazard ?
0
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
11 avril 2005 à 16:17
using (frmPop newP = new frmPop ())
{
if (newP.ShowDialog() == DialogResult.OK;
MessageBox.Show(newP.MaProperty);
}

::|The S@ib|::
MVP C#.NET
0
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
11 avril 2005 à 16:18
Il faudrait qu'on rajoute un indicateur sur les pages CS du genre

"Arthenius est déjà en train de répondre"

::|The S@ib|::
MVP C#.NET
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
11 avril 2005 à 16:24
lol :o)


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
0
bip98 Messages postés 104 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 29 avril 2008 1
12 avril 2005 à 08:49
Je comprends juste pas ce bout de code:

if(lafenetre.showdialok()==dialogresult.ok)
{
int recuperemavaleur = lafenetre.v_ind;
}

Ou je dois le mettre.. Ma fenetre princiapal s'appel par exemple winform et WINFORM appel WINFROM2

Je dois mettre se bout de code ou exactement !
Dans mon prog :

WinForm2 myForm = new WinForm2(axe_point, v_ind);
myForm.Show();

Ca reste ou je dois l'éliminé ! (le remplacer...)?
0
Je sais pas si je fais juste...

private int _v_ind=0;
public int v_ind
{
get
{
return _v_ind;
}
set
{
_v_ind = value;
}
}

Suite j'appel ma fenetre:
(ici je suis pas sur de moi....)

n_Formes myForm = new n_Formes(axe_point, v_ind);
if(myForm.ShowDialog() == dialogResult.ok) //ICI un problème de compilation
{
int recupvalue = myForm.v_ind;
}

Après pour le retour de ma valeur je dois faire comment dans la fentre n_Formes ?

Erreur de compilation:
[C# Erreur] Main.cs(1025): 'System.Windows.Forms.Form.dialogResult' est inaccessible en raison de son niveau de protection
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
12 avril 2005 à 10:41
Y'a un probleme de Majuscules la, non ?



DialogResult.OK

Mx
0
bip98 Messages postés 104 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 29 avril 2008 1
12 avril 2005 à 10:52
Oui c'était ca !!

Mais ma valeur v_ind n'est pas retourné...

Dans n_Forme l'envoie marche ! mais quand je reviens dans le programme principal (ou j'appel n_Forme) la variable v_ind est toujours à la même valeur?

//Déclaration
private int _v_ind=0;
public int v_ind
{
get
{
return _v_ind;
}
set
{
_v_ind = value;
}
}
------
//L'appel de n_Forme
n_Formes myForm = new n_Formes(axe_point, v_ind);
if(myForm.ShowDialog() == DialogResult.OK)
{
int v_recupvalue = myForm.v_ind;
}
------

Dans n_Forme je dois rien faire ? pas de ligne de code qui dit que je dois retourner la valeur ???
0
bip98 Messages postés 104 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 29 avril 2008 1
12 avril 2005 à 11:32
C'est exactement ca !!!

Mais j'ai modifié avec:

n_Formes myForm = new n_Formes(axe_point, v_ind);
myForm.ShowDialog();
this.v_ind = myForm.v_ind;

Merci à tous !
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
12 avril 2005 à 11:32
Y'a pas de quoi :)



Bonne continuation

Mx
0
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
12 avril 2005 à 11:39
Fermé le thread en validant les réponses stp

::|The S@ib|::
MVP C#.NET
0
Rejoignez-nous