2011-10-18 486 views
0

我有2個列表視圖用於不同的目的。簡單的問題是,我需要找出如何從WPF列表視圖中提取特定列,以將它們添加到對象的屬性中。從列表視圖獲取數據WPF

的我在做什麼說明:

列表視圖1: 綁定到一個數據庫表。用戶更改組合框以過濾listview綁定的表。 - 我不需要幫助。

列表視圖2: 此列表視圖綁定到一個觀察到的集合與3個屬性。 - 我不需要幫助。

用戶操作: 用戶從列表視圖中選擇1項的子集,並點擊「添加」。我想將listview 1的特定列添加到「employee」對象的屬性,然後添加到可觀察集合中,以便它們可以顯示在Listview 2中。

我已完成的操作: listview 1的數據綁定和listview 2完美工作。我有一個僱員類與3個屬性(代理id,名稱,辦公室)。我創建了一個可觀察的集合,我將添加員工到這個部分的IM FINE。

我需要的是: 我需要知道如何找到listview 1的特定數據,以便將正確的塊分配給我的可觀察集合中對象的相應屬性。

我試圖真正史詩般的失敗。我將在所有選定的項目環獲得來自各條數據,但我嘗試我只用了第一個選擇項:

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 

回答

1

DataRowViewHave你只是試圖通過SelectedItems循環?

foreach (DataRowView row in Listview1.SelectedItems) 
    { 
     ... 
    } 
+0

是的,我有。因此,我可以單獨訪問每行 - 在該行中,我有幾列,我試圖從這些行中提取數據。我正在遍歷datarowview的行itemarray ......但是,我需要的元素的位置似乎遍佈各處,我不覺得解決方案非常好。希望這是有道理的? – kdonah3

+0

該命令將是用於創建數據表的select語句中的順序。我相信你也可以使用列名行[ 「COLX」]。甚至有語法來根據位置檢索列名。 – Paparazzi