L'utilisation de Linq pour filtrer une liste déroulante.Source de données?

dans un autre sujet, je suis tombé sur cette très élégante solution par Darin Dimitrov pour filtrer la source de données d'une zone de liste déroulante avec la sélection d'une autre zone de liste déroulante:
comment filtrer zone de liste déroulante dans la zone de liste déroulante à l'aide de c#

combo2.DataSource = ((IEnumerable<string>)c.DataSource)
.Where(x => x == (string)combo1.SelectedValue);

Je voudrais faire quelque chose de similaire, mais intead de filtrage par une deuxième zone de liste déroulante, je tiens à filtrer par le texte d'une zone de texte. (En gros, au lieu de choisir à partir d'une deuxième zone de liste déroulante, l'utilisateur doit simplement entrer son filtre dans une zone de texte). Cependant, il s'est avéré être pas aussi simple que je l'avais espéré qu'il serait. J'ai essayé plein de trucs, comme les suivantes, mais a échoué lamentablement:

     cbWohndresse.DataSource = ((IEnumerable<DataSet>)ds)
            .Where(x => x.Tables["Adresse"].Select("AdrLabel LIKE '%TEST%'"));
        cbWohndresse.DisplayMember = "Adresse.AdrLabel";
        cbWohndresse.ValueMember = "Adresse.adress_id";

ds est le DataSet que je voudrais utiliser comme source de données filtré.
"Adresse" est un DataTable de ce jeu de données. Il contient un DataColumn "AdrLabel". Maintenant, je voudrais n'afficher que les "AdrLabel", qui contiennent la chaîne de caractères à partir de la saisie de l'utilisateur. (Actuellement, %TEST% remplace la zone de texte.texte.)

Le code ci-dessus échoue parce que l'expression lambda n'a pas de retour Bool. Mais je suis sûr, il y a aussi d'autres problèmes (qui dois-je utiliser pour IEnumerable? Maintenant, c'est DataSet, mais Darin utilisé Chaîne. Mais comment pouvais-je convertir un jeu de données dans une chaîne de caractères?

Oui, je suis comme beaucoup newbyish qu'il arrive, mon expérience est "vide", et publiquement. Donc, s'il vous plaît pardonnez-moi plutôt des questions stupides.

Votre aide est grandement appréciée, parce que je ne peux pas résoudre cela sur mon propre (déjà essayé).

Merci beaucoup!

Pesche

P. S. je ne suis qu'à l'aide de Linq pour parvenir à un simple filtre pour la zone de liste déroulante (en évitant de Vue). Le reste n'est pas basé sur Linq, mais sur oldstyle Ado.NET (ds est rempli par un SqlDataAdapter), si c'est de toute importance.

OriginalL'auteur Pesche Helfer | 2010-03-21