0

我有 2 个用于不同目的的列表视图。简短的问题是我需要了解如何从 WPF 列表视图中提取特定列以将它们添加到对象的属性中。

我在做什么的解释:

Listview 1:绑定到数据库表。用户更改组合框以过滤列表视图绑定到的表。- 我不需要帮助。

Listview 2:此列表视图绑定到具有 3 个属性的可观察集合。- 我不需要帮助。

用户操作:用户从 Listview 1 中选择项目子集并单击“添加”。我想将 listview 1 的特定列添加到“员工”对象的属性中,然后添加到可观察的集合中,以便它们可以显示在 Listview 2 中。

我完成了什么: listview 1 和 listview 2 的数据绑定工作完美。我有一个具有 3 个属性(代理 ID、姓名、办公室)的员工类。我创建了一个可观察的集合,我将把员工添加到这个集合中——这部分我很好。

我需要什么:我需要知道如何找到 listview 1 的特定数据,以便将正确的部分分配给我的 observable 集合中对象的相应属性。

我的尝试真的是史诗般的失败。我将遍历所有选定的项目以从每个项目中获取数据,但对于我的尝试,我只使用了第一个选定的项目:

    Class windEmployee
    Private Agents As New ObservableCollection(Of Employee)

    Private sub AgentData()
        Dim x As DataRowView
        X = Listview1.SelectedItems(0)
        Agents.Add(New Employee With {.AgentID = x.Row.Item(9), .Name = x.Row.Item(6)     & " " & x.Row.Item(7), .Office = x.Row.Item(16)}
    end sub
    End Class
4

1 回答 1

1

DataRowView您是否尝试过仅遍历 SelectedItems?

    foreach (DataRowView row in Listview1.SelectedItems)
    {
         ...
    }
于 2011-10-18T18:44:47.833 回答