ListView:如何通过循环迭代获得下一个索引或项

本文关键字:下一个 索引 迭代 何通过 循环 ListView | 更新日期: 2023-09-27 18:14:04

我是新手。我正在开发一个商店应用程序。我想迭代我的列表,这样每次我都能得到列表视图的下一项。我有一个弹出名称编辑弹出窗口,它有一个按钮(添加保存)。当用户单击列表视图中的任何项目并打开弹出框进行编辑时,如果他单击添加保存按钮,则当前项目应更新,列表视图应选择列表视图的下一个值,弹出框数据也应替换为下一个项目数据。下面是我到目前为止的代码:

if (addSaveBtnClick == true)
{
    PopupAddEditGarmentService.IsOpen = true;
    InvoiceGarmentServiceVM.getInvoiceGarmentServiceByInvoiceID(currentCustomerInvoice.InvoiceID);
    foreach (InvoiceGarmentServiceWork _invoiceGarmentService in InvoiceGarmentServiceVM.CollectionInvoiceGarmentServiceWork)// Lopp to iterate data from Collection
    {
        int _listCount = lvGarmentService.Items.Count;
        _listCount++;
        lvGarmentService.SelectedValue = _listCount;
    }
}
else
{
    PopupAddEditGarmentService.IsOpen = false;
}

ListView:如何通过循环迭代获得下一个索引或项

这取决于您希望引用视图模型集合还是UI。如果要引用UI,可以通过获取SelectedIndex来遍历后面代码中的项。

YourListView.SelectedIndex

一旦你得到了选定的索引,你可以运行逻辑并设置下一个选定的索引。

int index = YourListView.SelectedIndex;
//set new index 
//don't forget to do boundary checks
YourListView.SelectedIndex += 1;

如果您对使用视图模型集合来设置所选项目感兴趣,可以在XAML中设置

ListView.SelectedItem ="{Binding yourSelectedItemProperty}" 

然后你可以在视图模型中修改你所选择的项目,视图将会自我更新。