问题标签 [itemcollection]

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 投票
0 回答
93 浏览

c# - UWP C# 将 PivotItem 移动到不同的索引

我有这个 Pivot 控件,加载了 PivotItems。除了我希望能够动态地重新排序 PivotItems而不克隆 PivotItems 之外,这一切都很好。

问题是 Pivot 控件的 ItemCollection 似乎无法做到这一点。我可以插入一个不同的 PivotItem,但不能插入一个已经存在于不同索引 ( System.ArgumentException: Value does not fall within the expected range) 的 PivotItem。

我也尝试过myPivot.Items.RemoveAt(currentIndex)myPivot.Items.Insert(targetIndex, tabToMove)但这有时会产生System.Runtime.InteropServices.COMException (0x800F1000): No installed components were detected. Element is already the child of another element.

想法?

0 投票
0 回答
168 浏览

c# - WPF ListView 项目筛选器 - 刷新项目后未触发筛选器

我正在尝试将过滤器添加到我的 ListView。过滤器依赖于来自 TextBox 的输入。我正在向 ListView 添加一个过滤器,并在 TextBox 输入发生更改时触发刷新。我的问题:过滤方法只被调用一次。

我有的:

我在 XAML 文件中有一个 ListView。

我通过添加项目到 ListView

我正在添加过滤器:

注意:listViewGroupLayers 是 ListView,listViewGroupLayers.Items 是 ItemCollection。

我的过滤器:

刷新:

现在发生以下情况:我在 UserFilter 中设置了断点。如果我在 TextBox 中键入第一个字母,则断点将处于活动状态并且过滤器工作正常。但是,如果我现在键入第二个字母,则不会调用过滤器。

如果我只是执行以下操作,一切正常:

但这对我来说似乎很脏。我的问题:为什么第一次调用后过滤器不工作?我检查了的实例,this.listViewGroupLayers.Items它总是有过滤器对象。

0 投票
1 回答
615 浏览

c# - 如何在 ItemCollection 中找到具有特定属性的项目?

我有一个带有不同类型 UserControls 的 ItemsCollection,需要查找是否有任何对象满足条件Any(p => p.GotFocus)。由于 ItemsCollection 没有实现 IEnumerable,因此我可以将集合转换为某种类型,如ItemCollection 的基本 LINQ 表达式中所述:

该集合由不同类型的 UserControls 组成(虽然每个都继承自同一个父级),所以如果我强制转换为特定类型,则会引发异常。如何查询 UserControl 对象的集合?

0 投票
1 回答
72 浏览

c# - 如何在加载 ItemCollection 列表时执行搜索(错误:集合已修改;枚举操作可能无法执行。)

我在线程中有一个方法可以拉取用户图像,并将图像绑定到 ItemCollection 列表。在提取图像时,我希望能够搜索列表。我不断收到此错误,Collection 已修改;枚举操作可能无法执行。这是图像拉取代码:

这是搜索代码:

我已经阅读了关于同一问题的其他建议,但似乎没有一个对我有用。我该如何解决这个问题?

0 投票
1 回答
105 浏览

java - 将 Amazon DynamoDB ItemCollection 拆分为小块的最快方法

我需要构建一个 lambda 函数,从 DynamoDB 拉回数千个项目并在 Api Gateway 超时(29 秒)之前处理它们。我认为最好的方法是将集合分成更小的块并将它们分布在多个线程中以并行处理。

问题是,按照我目前尝试的方式进行操作需要大约 25 秒来拆分集合。有没有更好的方法来解决这个问题以便更快地处理?

代码:

0 投票
0 回答
56 浏览

wpf - 在 ItemsControl WPF 中将项目拖放到顶部或项目之间

在我的 MVVM WPF 应用程序中,拖放是在两个 ItemsControl 之间实现的。DragOver 和 Drop 方法在 ItemCollectionViewModel 中实现。ItemCollection 中的 Item 是 EquipmentViewModel 模型类。

在 Drop Method 中,我正在检查 targetItem 如下情况 1:当我在其他设备上放置时,目标 TargetItem 是 Equipment,并且替换逻辑工作正常。

案例 2:当我在项目之间插入时,dropInfo.TargetItem 是 ItemCollectionViewModel。现在,我无法获取目标项目集合的插入索引。它总是在最后添加。

在此处输入图像描述

如何在案例 2 中获取插入索引,以便可以将项目插入到丢弃的位置。

0 投票
1 回答
33 浏览

c# - 带有 ContextMenu ItemCollection 的 WPF 自定义控件

我正在尝试创建类似可扩展按钮 - 上面带有上下文菜单的按钮,该按钮将通过单击鼠标左键打开。唯一我仍然无法完成的是 items 属性,它可以在 WPF XAML 设计器中设置,例如用于ContextMenu控制。所以,据我所知,这意味着我需要ItemCollection为我的属性使用类型。好的。让我们看一下我的组件:

但我无法“捕捉” OnSomeMenuItemsPropertyChanged- 断点在这里不起作用。所以,这意味着这个机制是错误的。我该如何解决?我应该使用OnItemsChangedandOnItemsCollectionChanged事件(例如 for ObservableCollection)来处理属性的更改吗?或者也许是别的什么?