问题标签 [observablecollection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linq - 使用 linq 对 observable 集合进行排序
我有一个可观察的集合,我使用 linq 对其进行排序。一切都很好,但我遇到的问题是如何对实际的 observable 集合进行排序?相反,我只是得到了一些 IEnumerable 的东西,我最终清除了集合并重新添加了东西。这对性能没有好处。有谁知道更好的方法来做到这一点?
c# - ObservableCollection PropertyChanged 事件
我想子类化为ObservableCollection
它添加一个属性。不幸的是,该PropertyChanged
事件受到保护。基本上,我想对它进行子类化,SelectedItem
以便在我的 MVVM WPF 应用程序中为列表绑定一个。
这是我班级的骨架:
但我不能执行以下操作:
因为访问限制。这使我提出了一个更深层次的问题。UI 如何通知PropertyChanged
事件(例如 Count 属性)?请注意,我不能在代码隐藏中做到这一点。
头晕脑胀,有大神能指教一下吗?
c# - ObservableCollection 数据绑定性能
我想知道为什么根据这篇文章和可观察集合的绑定速度明显快于 WPF 中的 List<> 集合(20 毫秒对 1685 毫秒,快 800 倍)。我查看了 ObservableCollection 的内部结构,它使用一个 List 作为它的存储集合对象(我使用了反射器并在构造函数中看到了这个)
那么这里发生了什么?
wpf - 如何从 XAML 获取 ObservableCollection 中的项目数?
我正在显示从 ComboBox 中的 ViewModel ObservableCollectoin 属性获得的所有客户,如下所示:
有没有办法在不创建另一个 ViewModel 属性的情况下获取 ObservableCollection 中的项目数,例如:
伪代码:
wpf - Linq 和 ObservableCollection
我的 WPF 应用程序中的 Linq 和 ObservableCollections 有问题。
问题的背景:
我创建了一个非常简单的 SQL 数据库,其中包含两个表:User 和 BankAccounts。User 表与 BankAccounts 表具有一对多的关系。接下来我创建了 Linq-to-SQL 数据类,它运行良好 ==> 两个表之间的关联也被检测到。
接下来我创建了一个函数来检索所有正常工作的用户:
现在假设我想为每个用户添加一个新的 BankAccount(不太可能但仍然如此)。我可以添加以下代码
以上工作一切正常。由于数据库和 Linq DataClasses 中的关联,BankAccounts 属性自动成为 User 类的一部分。
但是,在我的应用程序中,我首先将查询结果添加到 ObservableCollection。因此,我可以使用各种数据绑定和更改通知。这是通过以下代码完成的;
问题:在 ObservableCollection 中,我不能对用户的 BankAccounts 属性做任何事情,因为它现在是 EntitySet<> 类型。所以我不能再做下面的陈述了。
不知何故,当查询结果被添加到 observablecollection 时,就不可能再访问 user.BankAccounts 属性了。但是,可以将 BankAccounts 属性绑定到任何控件,如列表框,并且它包含正确的数据。
有人现在如何创建一个 observableColction (或类似的集合),我可以访问这些“关联”属性吗?我真的很期待一个解决方案。
提前致谢!此致,
Bas Zweeris 邮箱:Bas.Zweeris@Capgemini.com
c# - 集合中项目的可观察集合属性已更改
我有一个ObservableCollection<T>
. 我已将其绑定到 ListBox 控件,并已添加SortDescriptions
到 ListBox 上的 Items 集合中,以使列表按我想要的方式排序。
当子元素的任何属性发生更改时,我想在任何时候使用列表。
我所有的子元素都实现了INotifyPropertyChanged
.
c# - 嵌套泛型
我以前问过这个问题,但我没有得到正确的问题,所以错过了答案。
如果我有一个返回方法的方法,ObservableColletion<T>
那么我将在另一个通用方法中使用它。
将
是要走的路。
我正在尝试制作一个通用的 resultEventArgs,它将 Ado.NET Dataservices 查询的结果传递给所有订阅者。在里面,我希望能够传递返回的强类型 EntityCollection [Ado.NET 1.5 生成]
所以是的,我的问题措辞是ObservableCollection
因为我不想让整个 ado.net 数据服务混乱。
干杯戴夫
silverlight - 什么是数据契约(属性类)和可观察集合
什么是数据契约(属性类)和可观察的集合,何时、何地以及为什么在silverlight的上下文中使用这些,请在详细信息和示例中进行解释
++ 感谢和问候 Meetu Choudhary
c# - 列表框滚动条不跟随所选项目(使用 ICollectionView)
我正在尝试在 WPF 中实现 MVVM 模式。我关注了 Jeremy Alles 的非常简单的 MVVM 演示应用程序。我有一个绑定到 ObservableCollection 的 ListBox:
我添加了一个ICollectionView来管理 ListBox 上的选定项目。它还允许我有两个按钮,允许我选择列表中的上一个和下一个项目。
这一切都很好,但是,当所选项目位于列表框的显示区域下方时,列表框的滚动条不会相应移动。
如何将 ListBox 的滚动条/显示区域与所选项目同步?
wpf - 如何调试 ViewModel 与 View 的绑定?
我的视图中有这个 ItemsControl :
在它上面我有这个 DataTemplate 呈现所有项目:
问题是,虽然我的ViewModel中的ItemPageItemViewModels ObservableCollection 中有 8 个对象,但只有最后一个对象在屏幕上显示了8 次。
我可以在我的 ViewModel 中设置一个断点来查看 ObserverableCollection 中确实有 8 个不同的对象,但是我如何调试绑定以查看为什么这个 DataTemplate 在我的屏幕上呈现集合中的最后一个对象 8 次?