工作为了过滤对象的名单,我定义这个属性:无法与我的过滤项
private ICollectionView _view;
public ICollectionView View
{
get
{
return _view;
}
set
{
_view = value;
OnPropertyChanged("View");
}
}
然后我的过滤器:
item.View = CollectionViewSource.GetDefaultView(item.myList);
item.View.Filter = delegate(object o)
{
if (myCondition)
{
return true;
}
}
过滤器工作正常,但作为ICollectionView是一个接口,我不能用我的项目工作:如果我打电话给他们这样说:
element1 = item.View[0].SomeProperty;
我收到
Cannot apply indexing with [] to an expression of type 'System.ComponentModel.ICollectionView'
我试着在一开始View
没有界面来设置,但后来我不能让过滤器的工作。 这样做,并试图投:
item.View = (ICollectionView)CollectionViewSource.GetDefaultView(item.myList);
有没有给我带来了很好的效果无论是。
我可以做些什么,以便不仅过滤(在我的情况下,我显示在一个组合框中的项目),但也与他们一起工作...我的目标是能够为剩下的所有元素做一个foreach循环组合框。这可能吗?
谢谢,我正试图执行它,但是,我有一个问题:列表是否更改或它保持不变?如果它发生变化,我可以将列表直接绑定到我的ComboBox,这是正确的吗? – Sturm
如果我绑定了视图,那么在我的ComboBox中没有项目,并且如果我绑定列表,则会收到一个异常,我无法将List转换为ICollectionView。你知道这里发生了什么吗? –
Sturm