【发布时间】:2016-08-12 14:22:12
【问题描述】:
在WPF 程序上使用ListBox 时,我遇到了一个相当奇怪的问题。
我已将我的ListBoxSelectionMode 定义为Single,但似乎即使在视觉上我无法选择多个项目,它也会发生在代码中。
可以在这里看到:
在尝试解决方法时,我尝试使用 UnselectAll 函数,但它仍然很奇怪地仍然选择了一个项目:
作为最后的礼物,一旦选择了多个项目,如果我尝试单击未选择的视觉对象,在代码中选择,项目我的应用程序崩溃并出现 System.ArgumentException(我想它会尝试选择我的项目,实际上已经选择了,因此由于添加了完美的副本而崩溃了?)
我查看了ListBox is selecting many items even in SelectionMode="Single" 有同样的问题,但在我的情况下,我无法直观地选择多个项目,而且我的项目完全不同,所以它并没有真正的帮助。
我在 ListBox.Click 上没有任何自定义行为可能会弄乱某些东西...
我的ListBox.ItemsSource 绑定到一个项目列表。
调用 useItem 时,我将减少所选项目的属性值,但它仍然是同一个项目(我不重新创建它/删除它然后重新添加它)
我的问题来自哪里? 我该如何解决?
【问题讨论】:
-
SelectedItems 是否绑定到您的 xaml 中的任何内容?
-
是否有其他东西正在向该列表添加项目?
-
我正在修改 'useItem' 函数中的选定项目(我的项目有一个 int charge 字段,我将其减 1)。但是我只修改了item,没有创建新的。
标签: c# wpf listbox listboxitem