0

我想更新右邊listview當我從右邊列表中的任何項目 當我點擊選擇所有項目來選擇正確的列表項目不是左邊的項目。如何從一個ListItem調用一個ListView

換句話說 我想要做的是,當我在左邊的列表中單擊任何項​​目的右側列表會根據我調用到diiferent列表

enter image description here

左邊的項目改變

這裏是我的JS代碼

function selectionChangedHandler() { 

    // Check for selection 
    var selectionCount = listView.selection.count(); 
    if (selectionCount === 1) { 

     // Only one item is selected, show the message 
     // information for the item 
     listView.selection.getItems().done(function (items) { 
      // Print item data to the relevant message pane locations 
      inboxMessage_Text.innerText = items[0].data.text; 
      if (items[0].data.key == 1) { 
       document.getElementById('listView4b2') 
         .innerHTML = '<ol><li>html2222 data</li></ol>'; 
      } else { 
       document.getElementById('listView4b2') 
         .innerHTML = '<ol><li>html data</li></ol>'; 
      } 
     }); 

    } 

} 
function selectAll() { 
    WinJS.log && WinJS.log(" ", "sample", "status"); 
    listView.selection.selectAll(); 
} 

function clearSelection() { 
    WinJS.log && WinJS.log(" ", "sample", "status"); 
    listView.selection.clear(); 
} 

和HTML代碼

<div id="listView4b" 
    class="win-selectionstylefilled" 
    data-win-control="WinJS.UI.ListView" 
    data-win-options="{ 
     itemDataSource: myToppingsData.dataSource, 
     itemTemplate: mediumListIconTextTemplate, 
     selectionMode: 'multi', 
     tapBehavior: 'toggleSelect', 
     layout: { type: WinJS.UI.GridLayout } 
    }" 
></div> 
+0

我不太清楚你想達到什麼。您是否想要更改右側可見項目列表,或者是否想要突出顯示(或選擇)與左側選擇相匹配的多個項目? – 2013-02-26 19:25:13

+0

是的,我想要做的是,當我點擊左側列表中的任何項目時,右側列表將根據我調用的左側項目進行更改。 – 2013-02-26 19:56:59

回答

0

假設myToppingsData是WinJS.Binding.List,在itemInvokeditemInvoked處理程序中使用createFiltered在此列表上創建投影。

然後,您可以將右側列表的itemDataSource設置爲此過濾列表數據源。

+0

和每個itemDataSource都將有一個特定的操作...謝謝 – 2013-03-05 22:43:42