2013-09-26 60 views
0

我正在使用VS2013 RC和Win8.1 Pro Preview,並且有以下問題: 在我的JS-App中,我有一個ListView和GridLayout。onItemInvoked不點火左鍵點擊

<div id="basicListView" data-win-control="WinJS.UI.ListView" data-win-options="{ 
    itemDataSource : MusikSender.itemList.dataSource, 
    itemTemplate: select('#mediumListIconTextTemplate'), 
    layout : {type: WinJS.UI.GridLayout}, 
    selectionMode: 'none', 
    swipeBehavior: 'none', 
    tapBehavior: 'invoke' 
    }"> 
    </div> 

,並啓動它:

var dataArray = [ 
    { title: "Number1", text: "Number1", picture: "images/sender/number1.png" } 
      ]; 

var itemList = new WinJS.Binding.List(dataArray); 

var publicMembers = 
    { 
    itemList: itemList 
    }; 
WinJS.Namespace.define("MusikSender", publicMembers); 

function itemInvokedHandler(eventObject) { 
    eventObject.detail.itemPromise.done(function (invokedItem) { 

    var title = invokedItem.data.title; 

    }); 
} 

document.querySelector('#basicListView').winControl.oniteminvoked = itemInvokedHandler; 

我不能離開單擊列表中的任何項目。什麼工作:我可以用箭頭鍵+返回來選擇它們。無法說出任何關於水龍頭行爲。

我在做什麼錯?

回答

1

請嘗試並設置

selectionMode: 'none', 

selectionMode: 'Single', 

,讓我知道,如果它的工作原理。

還設置

IsSwipeEnabled="true" 

用於設置觸摸手勢

+0

遺憾的是沒有: ( 我用VS運行了一個測試應用程序和ListView,它也不能工作... – JonasT

+0

它將是listView.oniteminvoked =處理程序;而不是wincontrol – Anobik

+0

刪除硫(2)看到selectionMode:'none', swipeBehavior:'none',猜你現在會成功:) – Anobik

0

我有同樣的問題,這是我能得到它的工作的唯一途徑...

var myListView = document.getElementById("basicListView").winControl; 
myListView.oniteminvoked = myEventHandler; 

function myEventHandler(args) { 
    var test = "Oh Hi"; 
}