begin process at 2010 02 09 22:46:03
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

.NET

 > 

comment conserver des données dans un form ?


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

comment conserver des données dans un form ?

mercredi 5 mai 2004 à 11:04:16 | comment conserver des données dans un form ?

delegouine

Mon problème : je développe une appli dans laquelle j'utilise plusieurs formulaires. Je ferme donc mon formulaire 1 à l'ouverture du formulaire 2 pour éviter de me retrouver avec des formulaires partout et un truc ingérable.
Or, sur ce formulaire 1, il y a des données que je souhaite conserver pour plus tard, par exemple si je rouvre mon formulaire 1.
Mais je ne sais pas comment faire pour conserver ces données : j'ai essayé de gérer avec des form1.Hide() à la place de form1.close() mais je suis pas assez douée pour réussir à le gérer... Est-ce que je dois passer par un fichier dans lequel j'enregistre mes données et si oui, comment faire ? Ou je suis passée à côté de la méthode élémentaire à laquelle tout le monde pense sauf moi ?






des frites !
mercredi 5 mai 2004 à 11:16:21 | précision

delegouine

je bosse en c#



des frites !
mercredi 5 mai 2004 à 13:40:04 | Re : comment conserver des données dans un form ?

MorpionMx

Membre Club Administrateur CodeS-SourceS
Je viens pas pour t'apporter une solution parce que j'ai jamais été confronté a ce problème, donc je sais pas, mais juste une petite idée.
Vu que tu as l'air de bosser avec plusieurs fenetres, peut-etre tu pourrais faire une application MDI ?
Ca ferait plus "propre" et le probleme des formulaires partout ne se poserait pas reellement.
Enfin, bien sur, si l'appli sur laquelle tu bosses te le permet.

Bon courage !
mercredi 5 mai 2004 à 15:06:21 | Re : comment conserver des données dans un form ?

delegouine

houlà, si je dois tout redévelopper (j'en suis à une douzaine de formulaires) et que ça ne sert à rien...
Il n'existe pas d'autre possibilité ?




des frites !
mercredi 5 mai 2004 à 15:42:33 | Re : comment conserver des données dans un form ?

MorpionMx

Membre Club Administrateur CodeS-SourceS
Ok, donc reprenons depuis le début.
Tu as une form d'ouverte. Et quand tu ouvres une autre form, tu aimerais que la premiere se cache (histoire de conserver les données).

Ce que jaimerais savoir, c'est de quelle facon sont ouvertes tes forms ? Est-ce que tu as une fenetre principale qui ouvre chaque formulaire ?
Ou est ce que c'est un formulaire qui en appele un autre, qui en appele un autre... en chaine ?

Dans le premier cas, il faut que dans le code de l'evenement onClick du bouton qui ouvre un formulaire tu fasses :


form1.Visible = !form1.Visible


dans le second cas (si ton premier formulaire ouvre le 2eme), il faut que dans le constructeur du second formulaire, tu passes en parametre un object Form qui indique quel form l'a ouvert.
Et a la fermeture de ce second formulaire, tu demandes de reouvrir le formulaire "parent" passé en parametre

J'espere que c'est pas trop confus
Et j'espere que c'était bien ca ton probleme
mercredi 5 mai 2004 à 16:13:46 | Re : comment conserver des données dans un form ?

delegouine

Tu as tout à fait cerné mon problème
Je suis dans le 2ème cas, un form en appelle un autre, qui appelle le précédent.

J'avais déjà entendu parler de passer un formulaire en paramètre mais je ne sais pas comment le faire :

- quand on passe le 1er formulaire en paramètre, comment fait-on ? C'est du genre form2 f2 = new form2(ref f1) ?
Le problème est que je ne sais pas comment définir f1...

- quand on rappelle le 1er formulaire (à la fermeture du 2nd), on met "nom_dans_constructeur_f2".show ou on crée un truc du genre
form1 f1 = new form1 (); f1.Show();this.Close();

??? ou autre chose ? Parce que j'ai essayé ceci :
code du constructeur :


public form2 (ref form f1)
{
...
}


et à l'appel du form1


f1.Show(); // même nom que le paramètre
this.Close();


et là le compilateur ne voit pas que j'appelle le form passé en paramètre...

Je suis (totalement) perdue !!!!





des frites !
mercredi 5 mai 2004 à 16:35:02 | Re : comment conserver des données dans un form ?

MorpionMx

Membre Club Administrateur CodeS-SourceS
En gros ca devrait donenr ca:

Appele de la Seconde form depuis form1 f1:

form2 f2 = new form2(f1);
f1.hide();


Et au nivau de la form2


public class form2 : Form
{
Form parent = null; // contiendra f1
form2(Form f)
{
this.parent = f; //
}

etc....
}


et pour l'evenemement closing de la 2eme form

parent.Visible = true;
// ou parent.Show();



Et sinon, pas besoin de mettre le "ref" dans les params du constructeur.
Quand tu passe un objet (comme une form) en parametre, tu passes son adresse memoire.

Ca devrai marcher (j'espere)
Desolé, j'ai peut-etre fait des erreurs de syntaxe, etc... Faudra corriger
mercredi 5 mai 2004 à 17:09:29 | Re : comment conserver des données dans un form ?

Arthenius

Membre Club
et si tu stockais tes donnees du form X dans un dataset et que tu enregitrerais a la fermeture de ton form tu utilise le dataset.writeXml("nom_fichier");
et lorsque tu a besoin de tes info tu utilise un autre dataset dans lequel tu fais un "dataset.readXml("nom_du_fichier");
et voilou...
y a plus qu'a gerer tes champs dans ton dataset...et le tour est joue...

Arthenius

"Ce qui ne me tue pas, me rend plus fort..."
mercredi 5 mai 2004 à 17:17:50 | Re : comment conserver des données dans un form ?

Arthenius

Membre Club
ou alors moins tordu tu defini des variables public dans lesquels tu stocks les valeur de tes champs et tu fais des form.hide(), etc....

Arthenius

"Ce qui ne me tue pas, me rend plus fort..."
jeudi 6 mai 2004 à 11:29:24 | Re : comment conserver des données dans un form ?

delegouine

Bon en fait, j'ai changé les relations entre les formulaires pour obtenir un système d'onglets via un tabcontrol et maintenant mes données restent en mémoire même si je change de form.

Merci quand même de vous être intéressés à mon problème, vos conseils me serviront certainement pour plus tard !





des frites !

1 2

Cette discussion est classée dans : form, données, formulaire, formulaires, conserver


Répondre à ce message

Sujets en rapport avec ce message

Imprimer données formulaires [ par Startrik ] BonjourJe cherche a imprimer toutes les données que contient un formulaire ( à savoir un datagrid, des editbox et des labels). Crystal report semble e Actualiser les données dans un form [ par GerardChezy ] Bonjour.Comment puis-je actualiser les données affichées dans un formulaire, qui viennent d'une méthode static d'un objet (liste de clients) et qui né Echange de données entre deux formulaires [ par fayerne ] Bonsoir à toutes et à tous,voila j'ai un petit souci avec un projet; j'ai une application qui utilise plusieurs formulaires windows et je dois faire t formulaire tronqué [ par titi66 ] Bonjourj'ai un form qui contient  un tableLayoutPanel. lorsque je lance ce form sur le poste de dév, tout est Ok (dans et en-dehors de VST2005)si j'in Sauvegarde de formulaire [ par Ithafer47 ] Bonjour à tous,Je débute en ce moment en C#.NET et j'aurais voulu poser une question.j'ai un formulaire comprenant un peu de tout (textbox, combobox, enregistrer un form sur disk [ par cudenetf ] bonjour,je cherche a enregistrer un formulaire sur diskapparemment ce n'est pas possible en tout cas je n'ai pas la methode...en fait mon formulaire c thread d'un form [ par trdev ] bonjourje commence à regarder les threads et j'ai des questions :si j'ai bien compris chaque formulaire est un thread particulier ... ou je me trompe. Probleme avec form hérité [ par Kbitnik ] Bonjour à tous,j'ai un petit problème, je m'explique :j'ai créer un formulaire  avec 4picturebox une en haut en bas a gauche et une a droite de façon accés méthodes dans un formulaire [ par oliv666 ] Bonjour, Mon problème est le suivant :J'ai 2 formulaires dans le même espace de nom. Je souhaiterais accéder aux méthodes d'un formulaire à l'autre. e formulaire temporaire [ par titi66 ] bonjourje développe une appli, et j'aimerai qu'au lancement de celle-ci un certain nombre d'opération de vérification ("pinger" du matériel) soit effe


Nos sponsors


Sondage...

Comparez les prix

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 : 8,705 sec (3)

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