如何根据对象的属性过滤对象的CollectionView?

时间:2018-02-19 18:27:57

标签: c# visual-studio visual-studio-2017 observablecollection collectionview

在我的项目中,我有一个从observable对象集合生成的集合视图,然后将其用作listview的数据源。每个对象都有一个名称属性和一个图标属性,我需要能够根据对象的名称过滤视图,任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

我最后只是躲避它,而不是使用正确的方法,因为它只适用于我的A-Level项目。我使用的代码是:

Cards = new ObservableCollection<Card>(LoadCards());
        FilteredCards = new ObservableCollection<Card>();
        Search();

        void Search()
        {
            foreach (var Card in Cards)
            {
                if (Card.Name.Contains(SearchBox.Text))
                {
                    FilteredCards.Add(Card);
                }
            }
        }

        private void SearchBox_TextChanged(object sender, TextChangedEventArgs e)
        {
            FilteredCards.Clear();
            Search();
        }