问题标签 [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 回答
2910 浏览

wpf - 异步 CollectionViewSource 过滤?

我变得非常大ObservableCollection<MyItem>,我需要对其提供用户友好的过滤。

..问题是上面的代码由于某些原因不起作用。在 UI 线程上进行拟合大约需要 1 分钟。任何想法如何实现异步过滤,至少能够显示一些“处理..”动画来帮助用户克服这个问题?

0 投票
1 回答
680 浏览

c# - 带有 ICollectionView SortDescription 的数据网格丢失了 - 错误?

这就是我想要的:如果我将 ICollectionview 绑定到 DataGrid,我不想在我的 Viewmodel 中丢失 SortDescription。

我创建了一个小示例项目来了解我的意思。在我的项目中,我只是使用 Usercontrol 在 DataGrid 中显示我的数据。如果我这样做,当 UserControl 卸载时, SortDescritpion 就消失了,因为 ItemsSource 设置为 null。如果我使用 TemplateSelector 来显示我的 UserControl,SortDescription 并没有消失,并且 ItemsSource 在卸载时没有设置为 null。问题是,为什么会有这些不同的行为?两种行为中的一种是错误吗?

顺便提一句。我使用 .Net 4.5.1 但安装了 4.6.1 并且 system.Windows.Interactivity 4.0.0.0

主窗口.xaml

主窗口.xaml.cs

MyGridControl.xaml

MyViewUc.xaml

MyViewUc.xaml.cs

编辑:我最终使用了这个

0 投票
1 回答
255 浏览

c# - 在 wpf 中对列表视图进行分组

在 UWP 应用程序中,我可以将 CollectionViewSource 的源设置为列表,它会立即将其分组。使用 WPF,它的工作方式似乎有所不同。我希望能够在后面的代码中对我的列表进行分组,然后将其提供给集合,而不是 listview 使用 PropertyGroupDescription 为我做这件事。

然后我只是将collectionViewSource 绑定到ItemSource。我怎样才能在 WPF 中做这样的事情?

0 投票
1 回答
452 浏览

c# - ICollectionView 中 Groups 内的项目未排序

我有一个ObservableCollection<string>

Window 中的AListBox绑定到此 Collection。在 Window Loaded 事件中,我将排序和分组逻辑分配给Collection.

TestGroupConverter在其转换方法中返回字符串的长度。

结果如下:

在此处输入图像描述

我希望这些组按升序排序,其中的项目按降序排序。但似乎SortDescription未使用组内的 for 项目 - 它未按降序排序。

我不确定我做错了什么。

0 投票
3 回答
2719 浏览

c# - WPF - 如何使用 MVVM 将 ICollectionView 绑定到数据网格

我是 WPF 的新手,并按照此链接使用代码优先方法来构建示例。这个例子有效。 https://msdn.microsoft.com/en-us/data/jj574514.aspx

现在,我正在尝试将其更改为遵循 MVVM。

这是 MainWindow XAML

这是 MainWindowViewModel

我不知道如何将第二个详细信息数据网格绑定到 ViewModel。我希望拥有与原始示例相同的 Master-Details 显示功能。

那么如何将Categories中的Products绑定到第二个datagrid呢?使用 MVVM 实现它的正确方法是什么?


更多信息:

0 投票
1 回答
933 浏览

wpf - 如何通过 icollectionview 添加或删除项目并使用 MVVM 模式反映在 EF 数据库中

我是 WPF 新手,目前我正在使用基于 MVVM 的实体框架 6(代码优先)构建一个主从应用程序。

这是用户界面。

在此处输入图像描述

主数据网格---类别

详情datagrid --- 产品

我需要的功能:

  1. 修改、添加、删除“类别”项或“产品”项

  2. 通过“保存”按钮保存到数据库。

  3. 用于控制主数据网格中显示项目的类别过滤器。

我将主数据网格绑定到我的视图模型中的 icollectionview“类别”。

视图模型:

问题:

由于过滤器功能,我将 ICollectionView 绑定到 Master Datagrid。添加(添加新行)或删除(按 Delete 键)类别操作无法保存到数据库。(我认为这是因为我正在处理 VIEW 而不是实际源代码。)那么通过 collectionview 添加/删除项目并反映到数据库(源代码)的正确方法是什么?或者我不应该使用 ICollectionView?

0 投票
0 回答
969 浏览

xaml - 绑定到 ICollectionView 时未显示模拟数据

如果我将我的绑定ListBox到 ViewModelsObservableCollection或 XAML 资源CollectionViewSource,模拟数据会在设计时显示。

有时CollectionViewSource由于某些 XAML 更改而停止显示此数据,但在重建代码后,它会再次用假数据填充控件。

在我的案例中,分组、排序和过滤是在 ViewModel 中控制的(并从数据库中重试),所以我决定转移到ICollectionView基于 ViewModel 的属性。不幸的是,视图根本不再获得模拟数据。

这是我的方法的简单示例:

后面的代码:

和视图模型:

为了将 CollectionViewSource 移动到 ViewModel 我尝试过的所有方法都不允许我查看模拟数据:

在此处输入图像描述

我对这些控件进行了一些调试比较,但它们在运行时的设置几乎相同。我不知道在设计时进行调试的能力。

有什么我想念的,还是必须这样?谢谢

0 投票
1 回答
4019 浏览

c# - wpf collectionview 多重过滤器

我需要一些建议。我有两个 ListView,第一个 ListView 是“ListViewAlbums”,第二个是“ListViewTracks”。ListViewTracks 中的项目被组织成组。ListViewAlbums 设置为 SelectionMode = "Extended" 和 Behaviours: MultiSelectorBehaviours.SynchronizedSelectedItems。 多选器行为

当我从 ListViewAlbums 中选择多个项目时,我想显示基于 ListViewTracks 的 ALBUMID 中的所有项目。

在此处输入图像描述

我当前的代码:

ListViewTracks GroupDescriptions:

员工资料:

ListViewAlbums 的 SelectedItem:

过滤:

XAML 代码:

非常感谢。

0 投票
2 回答
696 浏览

wpf - WPF ICollectionView 两种方式绑定?

我在 DataGrid 中显示一些数据,绑定到 CollectionView。绑定工作正常,但似乎是只读的:选中网格中的复选框不会更新模型。

减少荒谬:

代码后面,我的集合视图是一个依赖属性:

并像这样实例化:

在 xaml 中,我只是将 DataGrid 绑定到 _CollectionView,并将复选框绑定到 IsChecked。没有例外,并且 IsChecked 的状态正确反映在 UI 中。

但是单击复选框只会更新 UI,而不是模型。我是 WPF 的新手,来自 Cocoa,其中等效的是 NSArrayController 并且绑定可以直接开箱即用地双向工作。我错过了什么?

编辑:xml代码:

0 投票
1 回答
917 浏览

c# - 更改源后,ICollectionView 排序不起作用

我有一个使用实体框架查询数据库并将结果放在ICollectionView. ICollectionView充当ItemsSourcea的DataGrid。在第一次查询时一切正常,但在第二次查询时,尽管应用了正确的SortDescriptions.

这是我尝试查询和分组/排序数据的代码:

分组工作正常,但根据排序,组的顺序不正确。我已经尝试了许多可能的“修复”但没有成功(例如,将排序/组描述直接添加到CollectionViewSource,在分组之前排序,删除一些排序/分组,删除SortDescriptions每个CollectionViewSource 不会在属性更改时重新排序) .

无论执行多少查询,有谁知道如何维护排序顺序?我愿意接受在DataGrid可能有效的情况下查询显示数据的替代方法。