Как искать в списке с привязкой к XML? - PullRequest
0 голосов
/ 11 декабря 2011

Я заполнил свой listbox1 данными xml (XML Binding WPF). У меня есть текстовое поле, которое должно фильтровать значения, заполненные в моем списке. Так как я привязываю из XML, я не могу использовать функцию IndexOf или listbox1.items [ i] .ToString () в цикле for.

Любая идея Как сделать возможным ??

1 Ответ

0 голосов
/ 11 декабря 2011

Если ваш список связан с коллекцией, которая наследуется от IList, вы можете получить ListCollectionView в своем коде следующим образом ...

ListCollectionView lcv = CollectionViewSource.GetDefaultView (lv1.ItemsSource) как ListCollectionView;

где 'lv1' - это название элемента управления вашего предмета. Как только это будет получено, вы можете установить его свойство Filter с помощью предиката, подобного этому ...

lcv.Filter = (obj) => Convert.ToInt32 (obj)% 2 == 0; // выбираем только чётные числа

Предикат может принимать форму лямбда-выражения, которое будет оцениваться для каждого из объектов в вашей коллекции. В вашем случае предикат будет сравнивать каждого члена коллекции со значением в текстовом поле и возвращать результат. Он может вернуть только true или false ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...