begin process at 2010 02 10 07:59:07
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

Au secours

 > 

help pour form


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

help pour form

mercredi 30 mars 2005 à 10:53:21 | help pour form

angel2610

Lorsque j'appuye sur un bouton d'une form je voudrai pouvoir appeler une fonction d'une autre form.
NB: avec des parametre pour la fonction
merci
ca fait 2 jour que je cherche


mercredi 30 mars 2005 à 11:16:53 | Re : help pour form

Bidou

Administrateur CodeS-SourceS

Il suffit d'avoir une référence de la class (form) dans la form ou tu veux appeler ta méthode; et s'assurer bien sur que la méthode en l'occurance est bien public.

// Dans ta form ou t'as le boutton
refForm.MyMethod(myArguments);



[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever

mercredi 30 mars 2005 à 11:20:18 | Re : help pour form

TheSaib

Administrateur CodeS-SourceS
Conceptuellement faire çà c'est crade mais bon.

Ce que tu peux faire c'est mettre ta méthode en static dans la form2

et apres tu fais :
form2.Maméthode

::|The S@ib|::
MVP C#.NET
mercredi 30 mars 2005 à 11:35:43 | Re : help pour form

angel2610

merci mais je crois ne pas avoir bien compris.

 

en fait ce que j'ai c'est un  fenetre avec un datagrid et un bouton recherche.

quand je clique sur recherche une form recherche s'ouvre et la je rentre une partie du nom que je veu rechercher et qaund je clique sur ok je voudrai que ma fonction soit appeler. en sachant que celle si se trouve dans ma premiere form.

 

ou alors si je met la fonction dans la form recherche savoir comment je peut remplir le datagrid qui ce trouve sur la premiere form.

 

merci beaucoup :-)

mercredi 30 mars 2005 à 11:37:15 | Re : help pour form

angel2610

voici ma fonction

static void rechercher_exposant(string rech)
{

string requete;

 

string MaConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + @"Data Source=gdf.mdb";

requete = "SELECT Num_Exposant as NUM , RaisonSocial_Exposant as Raison_Social,Vedette_Exposant as Vedette, Nom_Exposant as Nom, Prenom_Exposant as Prenom FROM exposants Where nom_Exposant like'%" + rech + "%';";

DataSet MonDataSet;

OleDbDataAdapter MonDataAdaptater;

OleDbConnection Conn = new OleDbConnection(MaConn);

MonDataAdaptater = new OleDbDataAdapter(requete, MaConn);

MonDataSet = new DataSet();

MonDataAdaptater.Fill(MonDataSet, "Recherche");

dataGridView1.DataSource = MonDataSet.Tables["Recherche"].DefaultView;

dataGridView1.AutoSize = true;

label_Resultat.Text = Convert.ToString(dataGridView1.RowCount - 1);

}




mercredi 30 mars 2005 à 12:09:49 | Re : help pour form

Bidou

Administrateur CodeS-SourceS
Crade ??? pourquoi?
Déclarer la méthode static, ça peut poser des problèmes dans certain contexte non ?



[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever
mercredi 30 mars 2005 à 12:51:40 | Re : help pour form

MorpionMx

Membre Club Administrateur CodeS-SourceS
Tu as qu'a utiliser la propriété DialogResult, en ouvrant ta 2eme form de façon modale.
Petit exemple : La premier form appelle la 2eme. Quand on clique sur le bouton de celle ci, une méthode de la premiere form est appelée. Tu peux faire de meme en adaptant ton code (tu as juste a récuperer le parametre que tu souhaites)


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
mercredi 30 mars 2005 à 13:04:07 | Re : help pour form

MorpionMx

Membre Club Administrateur CodeS-SourceS
Bidou, je crois qu'il dit que c'est crade car il me semble que ce n'est pas Thread-safe. (2 forms = 2 threads créés non ?)
Dans son cas, le mieux serait quand meme d'utiliser le couple délégués / évènements, ca deviendrait propre.

Mx
mercredi 30 mars 2005 à 13:33:36 | Re : help pour form

Bidou

Administrateur CodeS-SourceS

C'est ce qui m'est venu à l'esprit après coup aussi.
Mais est-ce vraiment cette raison là?



[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever

mercredi 30 mars 2005 à 13:34:34 | Re : help pour form

TheSaib

Administrateur CodeS-SourceS
Bah crade parceque tu ne met pas de traitement dans une form, le formulaire est seulement une façade. Le modèle, le controller et la vue doivent être distincts. +  de modularité , + propre, + fonctionelle, + objet


::|The S@ib|::
MVP C#.NET

1 2

Cette discussion est classée dans : help, form


Répondre à ce message

Sujets en rapport avec ce message

problème de form + help [ par emmanuel9 ] Bonjour, En faite le problème est simple sauf que j'ai toujours pas trouvé comment faire. J'ai plusieurs formes avec une bouton suivant et precedent e Windows Form HELP !!! [ par CrAShGuN ] Bonjours, Mon problème est que dans mon application j'ai 2 form avec des controles différents et je voudrais que sur la 2ème Form quand je tape par ex Help conversion string en double [ par JCpp ] comment on convertir une chaine "string" en "double" avec visual studio .net c# ?exemple :string toto = "123.45";double titi = toto.??????????http://p User.Identity.Name help [ par mathnel ] je cherche a recuperer le nom de la personne qui se connecte. Pour cela j'utilse cecistring CurUser;CurUser=User.Identity.Name.ToLower();Je n'ai pas d Résolution ecran [ par streetlife ] Voila je créer un Form et une pictureBox dessus.Dans les propiriété du Form je spécifie que la fenetre sera a l'état maximisé dès le lancement de l'ap c# et html [ par lionel55 ] bonjour,comment intégrer du code html dans une form csharp?en fait j'aimerais avoir du html dans ma form csharpmerci si vous avez des idées Fonction publique [ par HolyDev ] Hi à tous !Voila j'amerai utiliser la fonction public d'une form parent lorsque l'on clic sur le bouton d'une de ses form enfant, j'ai essayé plein de pb avec une class en c# [ par JCpp ] Je ne comprends pas pourquoi quand je change Toto.toto=0; par Toto.toto=1; dans Form2.cs, le programme n'exécute pasrichTextBox1.AppendText("Form 3"+T Passage de variable [ par creanova2000 ] Bonjour ,Merci Caps pour l'aideComment je peux passer les valeur de deux variables entre deux windows forms.j'ai un windows form login qui contien les Application multi form [ par LuckyLuck ] Bon ben voilà, j'ai fait une application qui est en fait un form, qui crée une seconde classe(le deuxième form) et qui l'affiche. Tt va bien, sauf que


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

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 : 0,452 sec (4)

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