问题标签 [icollectionview]

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.

0 投票
1 回答
78 浏览

silverlight - Silverlight Datagrid 始终使用 null 调用 ICollectionView.MoveCurrentTo

我使用https://github.com/jogibear9988/VirtualCollection来自项目https://github.com/samueldjack/VirtualCollection的一个分支

现在我遇到了问题,每次我单击 Datagrid 中的一个项目时,所选项目都会正确设置为我的对象!但是它也调用了我的VirtualCollection的MoveCurrentTo,而且这个调用的参数总是null而不是当前对象!

有谁知道这可能是什么原因?

0 投票
1 回答
337 浏览

wpf - ICollectionView 过滤器影响源

我在试验 WPF 时遇到了一些我没想到的过滤行为。

我用 ListView 和 DataGrid 创建了一个简单的 Window 控件,它显示有关美国总统的信息,例如姓名、政党和数字顺序。

该应用程序实例化一个带有多个总统的 ObservableCollection。在 Main 中,从 ObservableCollection 创建一个视图,并应用过滤和排序。ListView 绑定到这个视图,DataGrid 绑定到原来的 ObservableCollection。

我希望 ListView 显示过滤后的结果,而 DataGrid 显示列表中的所有项目。但是,DataGrid 也会显示过滤后的结果。有人对此有解释吗?

0 投票
2 回答
22384 浏览

c# - WPF 多个 CollectionView 在同一集合上具有不同的过滤器

我将一个ObservableCollection与两个ICollectionView用于不同的过滤器。

一种用于按某种类型过滤消息,一种用于对已检查的消息进行计数。如您所见,消息过滤器和消息计数工作正常,但是当我取消选中该消息时,该消息将从列表中消失(计数仍在工作)。

顺便说一句,很抱歉这篇长文,我想包括所有相关的东西。

XAML 代码:

截屏: 在此处输入图像描述

代码:

取消检查功能的代码

0 投票
1 回答
591 浏览

wpf - WPF:ICollectionView.Refresh() 仅在 UIElement 失去焦点时刷新,而不是 Text 和 Value Change

我有一个ICollectionView, 调用RepozitorijumWrapper它应该根据六个字段显示我的实体。这些字段是两个TextBox和四个DateTimePicker元素。基本上,每当这些元素中的任何一个发生变化时(即使是数字/字母),我都希望列表更新。

我的DateTimePickerTextBox元素绑定到 DateTime 和字符串属性,RepozitorijumWrapper.Refresh()它们的 setter 中有代码。当我测试我的应用程序时,过滤器确实有效,但只有在您离开现场后才起作用。之后,我尝试Refresh()从控制器调用该方法,或者更确切地说,将TextChanged事件用于TextBox元素,将事件ValueChanged用于DateTimePickers。这没有任何改变。过滤器确实有效,但它并没有像我希望的那样刷新。

由于我的代码几乎是同一事物的六个副本,名称和类型都已更改,因此我将只粘贴每个相关代码部分的一个实例。

这是财产:

这是该属性的 XAML:

这是事件处理程序:

这是我的 ICollectionView,在我的演示者类的构造函数中创建:

0 投票
1 回答
2073 浏览

c# - 高效实现 ICollectionView 进行过滤

我刚刚ICollectionView在我的第一个 MVVM 项目中实现了一个,并且可以正常工作。不过,我认为实施可能会更好、更流畅。我将发布与我相关的代码ICollectionView,如果有人可以就如何简化或改进它给我任何提示或建议,请告诉我。这是我的代码:

这一切都在我的MainViewModel. Show...Execute 命令绑定到 my 中MainView的按钮,数据显示在ListBox绑定到AdventurerFilter. 就像我之前伤心的那样,它有效,但我严重怀疑这不能更有效地完成。任何意见,将不胜感激!

编辑:我应该早点提到这一点,但Adventurers它是一个ObservableCollection.

0 投票
1 回答
1225 浏览

c# - CollectionViewSource、ICollectionView、ListCollectionView、IList 和 BindingListCollectionView 及其用例有什么区别?

CollectionViewSource, ICollectionView,ListCollectionViewIList之间有什么区别BindingListCollectionView
何时何地使用所有这些集合?

我知道. CollectionViewSource_CollectionViewSourceListCollectionView

你能解释一下每种集合的确切区别和用例吗?

0 投票
5 回答
1721 浏览

c# - 数据刷新后如何保持当前的 ICollection 类型?

我的应用程序客户端/服务器有问题。我使用 MVVM 模式。在我看来,我在 ViewModel 中使用以下代码行DataGrid绑定了 a :ICollection

一开始,这两行工作正常:我DataGrid有我的客户列表,排序没问题。

但是当服务器更新我的客户列表时,我想更新我的收藏,所以,我的DataGrid. 因此,我收到了新客户列表的通知。当我收到此通知时,我用这些行更新我的收藏:

在这里,我DataGrid的数据很好刷新,但排序不是刷新,因为一开始,我的客户列表是按 CreationDate 排序的,但刷新后,我的列表是按客户名称排序的。

在这里,我的 XAML 代码:

你有什么想法可以帮助我吗?经过一些研究,我找到了任何解决方案......

0 投票
2 回答
8070 浏览

c# - WPF将过滤的ObservableCollection ICollectionView绑定到组合框

我想根据类型(类型 AddPoint)将 ObservableCollection 过滤到一个子集,并希望它按升序排列,没有重复。我的基类是 ModelBase,带有子类 AddPoint、Time、Repeat 等...... ObservableCollection MotionSequenceCollection 将以任何顺序填充这些类型,有些将是重复的。

我已经尝试了几次不同的时间,并将它们显示在我从中“拉出”的 ICollectionView 属性中: Bind subset of collection

可观察的集合

0 投票
3 回答
637 浏览

c# - 有没有办法创建一个转换它的源的集合视图?

我有一个ObservableCollection<T>可以容纳一种类型的对象。我需要它作为几个列表控件的来源,但我也想转换数据。为简单起见,假设我有一个ObservableCollection<int>并且想要得到一个ICollectionView返回字符串的 - 可能只是转换为字符串的整数。

有没有办法创建这样的视图?

不错的东西,例如:

0 投票
1 回答
569 浏览

c# - 未调用 ICollectionView 过滤器

我创建了一个小的用户控件,其中包含一个 ICollectionView 和一个 ObservableCollection。

变量在 UserControl 的构造函数中设置

UserControl 中的 ListView 绑定到 Log

在 ListView 下方,有一个 Checkbox,它绑定了一个布尔值,指示是否应该过滤某一行。

选中复选框后,过滤器会正确添加到 ICollectionView,但不会过滤列表框的内容。未调用 filterServer(object o) 函数。这段代码有问题吗?我用调试器单步执行了代码,看起来 Log.Refresh() 没有效果。

附加信息

PropertyChanged 事件定义为

LogMessage 和 MessageType 定义为