c# - 在 ListBox WPF 中默认选择 2 个或更多项目
问题描述
我在 wpf 中有一个带有属性的 ListBox,selectionMode="multiple"
我想默认选择 2 个或更多项目。
我尝试使用 foreach 循环选择它们,并且:
listview_name.selectItem(String value);
但它只选择最后一个元素。
关于如何使用列表视图或类似的东西来实现这一点的任何想法?
解决方案
如果没有您的实际源代码,这有点难以回答。如果在您的问题中使用代码隐藏,您可以简单地使用SelectedItems
集合添加不同的元素,例如:
listview_name.SelectedItems.Add("string 1");
listview_name.SelectedItems.Add("string 2");
如果你使用的是 MVVM,你可以绑定SelectedItems
到ObservableCollection
你的ViewModel
类中,例如:
XAML:
<ListBox ItemsSource="{Binding Items}"
SelectionMode="Extended"
SelectedItems="{Binding SelectedItems}" />
在 ViewModel 中添加以下属性:
public ObservableCollection<String> Items{ get; }
= new ObservableCollection<string>();
public ObservableCollection<String> SelectedItems { get; }
= new ObservableCollection<string>();
推荐阅读
- javascript - 为什么如果我使用 'var' 变量然后在代码中删除它,它会留在内存中并且我可以再次使用它?这是 JAVA SCRIPT 的正常行为吗?
- networking - 如何在命名空间中创建 SSH 服务器?
- tensorflow - TF2 - GradientTape 与 Model.fit() - 为什么 GradientTape 不起作用?
- javascript - 刷新后从本地存储中删除的项目仍然存在(vanilla JS)
- jquery - Jquery 不在 Firefox 中触发,但在 IE 和 Edge 中有效
- vba - 使用 VBA 恢复 JPG 文件中的元数据
- grpc-python - 如何在gRPC Python中实现消息接收的服务器端双向流超时?
- javascript - 根据取货和交付按钮显示或隐藏 WooCommerce 结帐字段
- c - 将两个整数输出为双精度数。C语言
- angular - 为什么调用 ReplaySubject.next() 不会导致订阅者接收新值?