Partager via


Étape 3 : Remplir la zone de liste des champs

Pour remplir la zone de liste Champs, insérez le code suivant dans le gestionnaire d’événements de clic de lstMain :

Private Sub lstMain_Click()  
    Dim rec As Record  
    Dim rs As Recordset  
    Set rec = New Record  
    Set rs = New Recordset  
    grs.MoveFirst  
    grs.Move lstMain.ListIndex  
    lstDetails.Clear  
    rec.Open grs  
    Select Case rec.RecordType  
        Case adCollectionRecord:  
            Set rs = rec.GetChildren  
            While Not rs.EOF  
                lstDetails.AddItem rs(0)  
                rs.MoveNext  
            Wend  
        Case adSimpleRecord:  
            recFields rec, lstDetails, txtDetails  
  
        Case adStructDoc:  
    End Select  
  
End Sub  

Ce code déclare et instancie les objets Record et Recordset locaux, rec et rs respectivement.

La ligne correspondant à la ressource sélectionnée dans lstMain devient la ligne courante de grs. Ensuite, la zone de liste Détails est effacée et rec s’ouvre avec la ligne actuelle de grs comme source.

Si la ressource est un enregistrement de collection, comme spécifié par RecordType, le Recordset local rs est ouvert sur les enfants de rec. Ensuite, lstDetails est rempli avec les valeurs des lignes de rs.

Si la ressource est un enregistrement simple, recFields est appelé. Pour plus d’informations sur recFields, consultez l’étape suivante.

Aucun code n’est implémenté si la ressource est un document structuré.

Voir aussi

Scénario de publication Internet
Étape 2 : Initialiser la zone de liste principale
Étape 4 : Remplir la zone de texte Détails