Linq et ComboBox : ajout d'une ligne vide, pour affichage...
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 WithLors du traitement du résultat de la sélection utilisateur, on pensera à gérer le cas où cette ligne vide est sélectionnée.