0

右のリストからアイテムを選択したときに右を更新したいlistviewまた、[すべてのアイテムを選択]をクリックして、左のアイテムではなく右のリストのアイテムを選択します。

言い換えれば、私がやりたいのは、左側のリストのいずれかの項目をクリックすると、異なるリストに呼び出した左側の項目に応じて右側のリストが変化することです。

ここに画像の説明を入力してください

これが私の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>
4

1 に答える 1

0

myToppingsDataそれが WinJS.Binding.List であると仮定するとitemInvoked、左側のハンドラーでWinJS.UI.ListViewを使用してこのリストにプロジェクションを作成しcreateFilteredます。

itemDataSource次に、右側のリストの をこのフィルタリングされたリストの dataSource に設定できます。

于 2013-02-26T22:29:17.393 に答える