I have an ItemCollection that I\'d like to query using LINQ. I tried the following (contrived) example:
var lItem =
from item in lListBox.Items
where Str
It's because ItemCollection only implements IEnumerable, not IEnumerable.
You need to effectively call Cast which is what happens if you specify the type of the range variable explicitly:
var lItem = from object item in lListBox.Items
where String.Compare(item.ToString(), "abc") == 0
select item;
In dot notation, this is:
var lItem = lListBox.Items
.Cast
If course, if you have a better idea of what's in the collection, you could specify a more restrictive type than object.