Bonjour,

Voici le code suivant en Vb.net qui est des plus simples
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
 
TextBox2.Text = "Bonjour"
    End Sub

L’argument sender est transmis par valeur alors qu’il est de type Objet donc structuré.
Il en est de même pour l’argument e de type EventArgs
Pouvez vous m’expliquer pourquoi on n’utilise pas ByRef pour
les passage des arguments sender et e

De la même manière lorsque l’on crée un nouveau SqlDataAdapter par exemple avec cette instruction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
ObjDA As SqlDataAdapter
objDA = New SqlDataAdapter(StrSQLThesaurus1, objConn)
D’après le constructeur de la classe SqlDataAdapter, l’argument objConn, qui ,à la base, est de type SqlConnection, donc de type structuré, est passé par valeur et non pas par référence
Pouvez vous m’en expliquer la raison.

Merci beaucoup à vous.

Autre et dernière question:
J'ai crée un dataset objDS qui contient le resultat d'une selection de termes de la table TERMES, comme vous pouvez le comprendre d'après ce code
On suppose que objConn est une connxion à la BDD déjà initialisée
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
 
 
StrSQLThesaurus1 as String
StrSQLThesaurus1 = "SELECT ID_TERME,LIB_TERME from TERMES;"
 
 
 
        'on ajoute la table THESAURUS_objDS au dataset objDS
        objDA = New SqlDataAdapter(StrSQLThesaurus1, objConn)
 
        objDS = New DataSet
 
        objDA.Fill(objDS, "objDS_THESAURUS")
 
        objConn.Close()
Pour chaque ligne de la table objDS_THESAURUS du dataset objDS, qui contient donc le contenu des champs ID_TERME et LIB_TERME de la table TERMES, on ajoute un ListViewItem à la ListView appelée List_view_termes et par la fonction Add, on recupère l'adresse du nouveau ListViewItem dans la variable lvi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
Dim lvi as ListViewItem
For Each ligne_table_termes_objDS In objDS.Tables("THESAURUS_objDS").Rows
 
                lvi = List_view_termes.Items.Add(ligne_table_termes_objDS("LIB_TERME"))
Du fait que j'ai mis l'option Strict à ON, je reçois un message qui m'annonce que du fait de cette option Strict à ON, il ne peut y avoir de conversion implicite du type Object vers le type String.

Pourquoi ligne_table_termes_objDS("LIB_TERME")) est il considéré comme étant de type Object et pas de type dataRow.

Merci beaucoup encore de votre aide.

Bien cordialement.

Nathalie