我在xaml中有多个选择的listview,我想从这个listview中获取选定的值。我也在这里检查了不同的解决方案,但对我来说无法实现。
我是那样尝试的
var selectedItems = lstVRecycle.SelectedItems;
foreach (ListViewItem selectedItem in selectedItems)
{
selectedItems.values
}
提前致谢
答案 0 :(得分:0)
修改强>
我正在使用返回自定义类(Id,Name)列表的webservice 我确实将listview itemsource初始化为列表,并且多次 选择启用。所以现在我想得到所有的id(在数组中) 列表视图的选定项目。
sourceList
是您的网络服务返回列表
lstVRecycle.ItemsSource = sourceList //Your webservice which return list
List<int> setOfItems = new List<int>();
var selectedItems = lstVRecycle.SelectedItems;
foreach (var item in selectedItems)
{
var value = lstVRecycle.Items.IndexOf(item);
setOfItems.Add(value);
}
setofItems
包含所选项目的索引
List<string> selectedItemIds = new List<string>();
foreach (var ids in setOfItems) // setOfItems contains index of your selected items
{
var value= sourceList[ids];
String idValue = value.id; //id is your id Value
selectedItemIds.Add(idValue);
}
检查selectedItemIds
并设置一个断点,你拥有所有idValues
完美无缺。只需要处理你的数据类型; &安培;我们在这里帮助不要猜测。没有正确的答复&amp;关于你的问题的正确信息你永远不会得到你想要的答案。祝你好运
答案 1 :(得分:0)
假设您将 ListView 绑定到 Test 类型的对象集合(其中包含 Id 和 Name > properties)您可以通过以下方式检索所选项目的ID数组:
var selectedItems = lstVRecycle.SelectedItems.OfType<Test>().Select(o => o.Id).ToArray();
我的XAML如下所示:
<ListView x:Name="lstVRecycle" SelectionMode="Multiple" ItemsSource="{Binding Data}">
<ListView.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"></TextBlock>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
在此示例中, Data 是 Test 类型的对象的集合。