Bonjour,
J'ai créé une classe Form1 dans un fichier "Form1.cs" qui hérite de la classe Form avec une méthode MethodeA().
Dans le concepteur graphique de Form1, j'ai placer la classe controlPerso suivante, qui a été créé dans un fichier "ControlPerso.dll" et qui hérite de la classe UserControl.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 using B namespace A { public partial class Form1 : Form { public Form1() { InitializeComponent(); } public void MethodeA() { } } }
Le constructeur de ControlPerso est donc automatiquement placer dans un fichier "Form1.Designer.cs" dont voici une partie du code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 using A; namespace B { public partial class ControlPerso: UserControl { public ControlPerso() // Ligne 1 { InitializeComponent(); } public void MethodeB() { // Je veux appeler la methodeA() mais je n'y arrive pas // Ligne 2 } } }
Mon problème est le suivant: à partir de la methodeB(), je dois utiliser la methodeA(), comment faire ? (J'ai bien pensé à remplacer la ligne 3 et la ligne 1 par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 namespace A { partial class Form1 { private void InitializeComponent() { this.controle = new B.ControlPerso(); // ligne 3 ... } ... private B.ControlPerso controle; } }
en créant une instance Parent pointant sur _Parent, mais cela ne marche pas: le fichier "Form1.Designer.cs" refuse de s'afficher correctement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Ligne 3 <- this.controle=new B.ControlPerso(this) Ligne 1 <- Public ControlPerso(Form1 _Parent)
Y-a-t-il une solution pour référencer Form1 dans la dll?
Merci pour vos réponses.
Partager