Linq et ComboBox : ajout d'une ligne vide, pour affichage...

Publié le par ------

Lors de l'attribution d'une source de données à un contrôle ComboBox, il est fréquent que je souhaite ajouter une ligne vierge en haut de la liste, afin d'éviter une sélection par défaut lors de l'initialisation de la ComboBox, et afin d'améliorer l'expérience utilisateur.

Lorsque la source de données est une requête Linq, voici l'extrait de code permettant d'ajouter cette ligne :

With Me.cmbClients 
    Dim req2 = From c As Client In dc.Clients Select ID = Guid.Empty, RaisonSociale = ""
    Dim req = (From c As Client In dc.Clients Select ID = c.ID, RaisonSociale = c.RaisonSociale).ToList
    req.Insert(0, req2.FirstOrDefault)
    .DataSource = req
    .DisplayMember = "RaisonSociale"
    .ValueMember = "ID"
End With

Lors du traitement du résultat de la sélection utilisateur, on pensera à gérer le cas où cette ligne vide est sélectionnée.


Publicité

Publié dans Linq

Pour être informé des derniers articles, inscrivez vous :
Commenter cet article