0

我正在使用 VS2013 RC 和 Win8.1 Pro Preview 并遇到以下问题: 在我的 JS-App 中,我有一个带有 GridLayout 的 ListView。

 <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;

我无法左键单击列表中的任何项目。什么是工作:我可以用箭头键+返回来选择它们。不能说任何关于点击行为的事情。

我究竟做错了什么?

4

2 回答 2

1

请尝试设置

selectionMode: 'none',

selectionMode: 'Single',

让我知道它是否有效。

还设置

IsSwipeEnabled="true"

用于设置触摸手势

于 2013-09-27T08:50:17.807 回答
0

我有同样的问题,这是我可以让它工作的唯一方法......

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

function myEventHandler(args) {
    var test = "Oh Hi";
}
于 2014-01-24T20:11:02.213 回答