Bonjour,
J'ai une application qui comporte 2 fenêtre form1 et form2.
J'utilise form1 pour remplir un dataset créé dans ce form.
form2 utilise les données de ce dataset et écrit également dedans (rajoute de nombreuses tables)
pour utiliser ce dataset dans le code de form2 je l'appelle tout simplement en faisant : Form1.MonDataSet
Tout ça marche très bien tant que je suis en type d'application "Application Windows Form"
Là où ça se complique c'est que mon application doit être appelée par un autre programme en tant que module complémentaire, pour ce faire je génère des .dll, je change donc le type d'application en "bibliothèque de classe".
Quand je change le type d'application le débogage automatique de VS2008 me génère une erreur à chaque fois que dans le form2 je fais référence à mon dataset du form1 :Premièrement je ne suis pas bien sur de comprendre pourquoi j'ai ce type d'erreur qui empêche la génération de mon projet. Si une bonne âme pouvait tenter de m'expliquer...Une référence à un membre non partagé requiert une référence d'objet
Deuxièmement j'aimerais bien trouver une solution pour 'passer' ce dataset de la form1 à la form2. Que la form2 puisse écrire dans le même dataset.
Petites infos complémentaire sur la structure de mon projet :
en mode "application Windows Form"
l'objet de démarrage est la form1. Quand c'est nécessaire dans le code de la form1 je fais stricto census :
en mode bibliothèque de classe:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Me.hide() form2.showdialog()
l'application hôte lance un script qui définit une nouvelle instance de ma form1 et le "montre"
puis dans le code de form1 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Dim fMenu as new Form1 fMenu.showdialog()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 dim Fenetre as new Form2 Fenetre.showdialog Me.hide
Partager