我有一个方法,我想用来过滤listview。我正在动态创建listview,因此我不知道colums的数量。 lstCurrentDynamicItems是一个只有一个属性的类,该属性名为c,其类型为object []。我创建了这个类来保存listview的对象。如果我总是会有相同的列表视图,那么我会没有问题建立下面的方法。我怎样才能实现以下方法?LINQ查询中创建某种循环
public void filterListView(string[] columnsContains)
{
// lstCurrentDynamicItems is a list of objects
// columnsContains is what I want to filter.
var qr = from a in lstCurrentDynamicItems
where a.c[0].ToString().Contains(columnsContains[0]) &&
a.c[1].ToString().Contains(columnsContains[1]) &&
a.c[2].ToString().Contains(columnsContains[2]) &&
// ...
// ...
// ...
a.c[columnsContains.Length].ToString().Contains(columnsContains[columnsContains.Length])
select a;
listView.DataContext = qr;
}
这很好。谢谢! – 2011-05-10 21:03:10
@Tono Nam:当然你必须确保'a.c.Length'总是等于(或大于)'columnsContains.Length' – digEmAll 2011-05-10 21:06:31