Bonjour à tous,
J'ai qlq soucis à comprendre comment transférer le contenu d'une variable de class vers une autre classe.

ci-dessous le code pour mieux comprendre, j'ai aussi ajouté des commentaires afin de mieux comprendre mon probleem :
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
Public Class Front
    Inherits general_cmd
	'dim mylayer as string = "layer front"
	' ici le programme appelant doit passer et valider la variable mylayer=layer front
End Class
 
Public Class Back
    Inherits general_cmd
	'dim mylayer as string = "layer back"
	' ici le programme appelant doit passer et valider la variable mylayer=layer back
End Class
 
Public Class general_cmd
    Public Sub generalsub()
	' ici une procédure qui génére qlq chose MAIS avec mylayer qui vient soit de la class Back ou Front et dont une valeur différente
        MsgBox("valeur de la vaiable : " & mylayer)
    End Sub
End Class
 
 
Public Class Form1
    Dim myback As New Back
    Dim myfront As New Front
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
 
    End Sub
 
    Private Sub test_Click(sender As System.Object, e As System.EventArgs) Handles test.Click
        ' ici je veux passer par la class back et mylayer prendra la valeur = layer back
	myback.generalsub()
 
    End Sub
 
    Private Sub call_front_Click(sender As System.Object, e As System.EventArgs) Handles call_front.Click
        ' ici je veux passer par la class front et mylayer prendra la valeur = layer front
	myfront.generalsub()
 
    End Sub
End Class
Donc, dans mon programme appelant, comme vous l'avez vu, la commande :
myfront. appele l'objet pour la classe
generalsub() appele la procédure dans la classe generale_cmd
La variable "mylayer" doit être visible dans les classes (qui seront compilées seule plus tard (.dll)) (class : front, back, general_cmd et d'autres). Mais cette variable mylayer ne doit pas etre vu et accéssible par le programm appelant (ici Form1)...
J'espere etre assez clair
En résuimé, comment faire pour que "mylayer" soit modifiée à chaque appel de la class front ou back et se retrouver avec la bonne valeur dans la class general_cmd ?
Merci
Patrick