vb.net - LINQ 和静态 ObservableCollection

标签 vb.net linq observablecollection

这可能是 LINQ 和架构专家的基本问题,但是我无法理解我在尝试更新“静态 ObservableCollection”时遇到的问题。

 Me.Grid1.ItemsSource = ContactList

 Me.Grid2.ItemsSource = From s In ContactList Where s.ContactTypes.Any(Function(t) t.ContactTypeName = "Christmas List")

如果我向 ContactList ObservableCollection 添加一个新的 ContactContactType “Christmas List”,Grid1 会反射(reflect)额外的联系人,而 Grid2 会除非我重新绑定(bind),否则不会反射(reflect)更改

无论如何反射(reflect) Grid2 中的变化以显示新的 Contact 与查询的 ContactType

最佳答案

Grid2 实际上是绑定(bind)到一个 IEnumerable(Of Contact) 而不是一个 Observable 集合。这就是更改未反射(reflect)在 Grid2 中的原因。您需要使用事件或 INotifyPropertyChanged 使 Linq 查询重新执行。

关于vb.net - LINQ 和静态 ObservableCollection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8037956/

相关文章:

vb.net - ASP.NET MVC 3 上的 HtmlAttributes 与 VB.Net 中的 Razor View

vb.net - VB.NET 中的除法

c# - 使用 WPF 的 Entity Framework 存储库模式

c# - MVVM - 为 ModelView 实现 'IsDirty' 功能以保存数据

c# - 在 mvc 中显示 url slug 而不是 id

c# - FxCop 讨厌我对 MVVM 的使用

c# - 在过去十年中我一直在使用 VB 编写代码,我该如何调整我的 C# 技能?

.net - 如何获得来自主音频 channel 的当前声音的响度?

c# - 按列分组的 LINQ 方法语法,从每组中选取一个元素以及每组的总计数

linq - 我应该如何开始学习 ADO.NET Entity Framework ?