Bonjour à toute et à tous.

Je me permet de poster un discutions pour éclairer ma lanterne.

Je préviens, il y a pas de vrai problème en sois. C'est juste une question purement de connaissance.

Donc je m'explique. J'ai dans l'idée de faire un projet de création de compte avec stockage des différents éléments composant le compte dans une base de donnée.

Pour bien organiser mon code, je crée un class.vb pour y mettre tout mes lignes qui pourrait être récurrente.

Ensuite, je crée une form1 avec un bouton qui change son texte quand je suis connecté ou pas.

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
Imports System.Data.SqlClient
 
 
Public Class Appel_de_code
 
 
 
    Dim cnString As String = "Data Source=nom de mon serveur;Initial Catalog=Utilisateur;Integrated Security=True;Pooling=False"
    Dim cn As SqlConnection
 
    Public Sub Connection_serveur()
        Dim a As New Listing_d_employer
 
 
        If a.Button1.Text = "Se connecter" Then
 
            cn = New SqlConnection(cnString)
 
            Try
                If cn.State = ConnectionState.Closed Then
                    cn.Open()
                    a.Button1.Text = "Se deconnecter"
                End If
 
            Catch ex As Exception
                MessageBox.Show("Impossible de se connecter à la base de donnée !!!")
            End Try
 
        Else
 
            cn.Close()
            a.Button1.Text = "Se connecter"
        End If
 
 
    End Sub
Donc ci-dessus ma class.vb ou j'ai la structure de mon 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
Imports System.Data.SqlClient
 
 
Public Class Listing_d_employer
 
    Dim a As New Appel_de_code
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
 
 
        a.Connection_serveur()
 
 
 
    End Sub
End Class
Et ci-dessus mon événement pour le clik dans ma form1.vb.

Donc ma question est la suivant:

Quand je place le code suivant dans l'événement :

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
Imports System.Data.SqlClient
 
 
Public Class Listing_d_employer
    Private cnstring As String = "Data Source=nom de mon serveur;Initial Catalog=Utilisateur;Integrated Security=True;Pooling=False"
    Private cn As SqlConnection
 
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
 
 
 
 
 
        If Button1.Text = "Se connecter" Then
 
            cn = New SqlConnection(cnString)
 
            Try
                If cn.State = ConnectionState.Closed Then
                    cn.Open()
                    Button1.Text = "Se deconnecter"
                End If
 
            Catch ex As Exception
                MessageBox.Show("Impossible de se connecter à la base de donnée !!!")
            End Try
 
        Else
 
            cn.Close()
            Button1.Text = "Se connecter"
        End If
 
 
 
    End Sub
End Class
Cela fonctionne. Mais quand je fait appel à la sub à partir de ma class.vb pour l'événement dans la form1, cela ne fonctionne pas.
Exemple du code en dessous:

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
Imports System.Data.SqlClient
 
 
Public Class Listing_d_employer
    Private cnstring As String = "Data Source=nom de mon serveur;Initial Catalog=Utilisateur;Integrated Security=True;Pooling=False"
    Private cn As SqlConnection
    Dim a As New Appel_de_code
 
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
 
 
        a.Connection_serveur()
 
 
    End Sub
End Class
Du coup, j'aimerais savoir pourquoi?

Personnellement, comme je vous l'ai dit, cela est pas vraiment un problème vu que j'arrive à mes fins. Mais je vous avoue que cela serais plus agréable d'avoir un class.vb où je mettrais tout mes procédures, instruction ect, pour avoir un code structuré et ainsi aérer ce dernier pour le rendre lisible pour moi et les autres éventuellement.

De plus, je préviens, je suis un amateur éclairé et le code que j''ai écris net pas de moi. Merci à ProjetX7 et à tout les autres de prendre le temps nous instruire.

Merci d'avance de votre aide et au plaisir de vous lire.