gpt4 book ai didi

c# - ICollectionView获取特定对象

转载 作者:行者123 更新时间:2023-12-03 10:20:36 25 4
gpt4 key购买 nike

我正在使用ICollectionView,其中包含对象列表。
我需要根据一些信息从中获取特定对象
对象属性,有没有办法做到这一点?

例如,该对象是User,我需要提供name获取此对象。我该怎么办?

private readonly ICollectionView usersCollectionView;

public MappingViewModelView()
{
_UsersList = new ObservableCollection<User>
{
new User {Name = "Jhon"},

};
usersCollectionView = CollectionViewSource.GetDefaultView(_UsersList);
UsersCollectionView.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending));
}

最佳答案

SourceCollection 实例中获取 ICollectionView 并将其转换为您的特定类型(在您的情况下为User),您可以使用LINQ扩展方法来获得结果。

User user = usersCollectionView.SourceCollection.Cast<User>()
.FirstOrDefault(p => p.Name == "Jhon");



使用 OfType<T>扩展方法:
User user = usersCollectionView.SourceCollection.OfType<User>()
.FirstOrDefault(p => p.Name == "Jhon");

您必须添加 System.Linq 命名空间才能使用Cast和FirstOrDefault扩展方法。

关于c# - ICollectionView获取特定对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21969259/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com