ListView.oniteminvoked event

Raised when the user taps or clicks an item.


<div data-win-control="WinJS.UI.ListView" 
    data-win-options="{oniteminvoked : handler}">
function handler(eventInfo) { /* Your code */ }
// addEventListener syntax
listView.addEventListener("iteminvoked", handler);
listView.removeEventListener("iteminvoked", handler);
- or -

listView.oniteminvoked = handler;

Event information

Synchronous No
Bubbles Yes
Cancelable Yes


Event handler parameters

  • eventInfo
    Type: CustomEvent**

    An object that contains info about the event. The detail property of this object contains the following sub-properties:

Property Meaning

The zero-based index of the item that was invoked relative to the first visible item on the screen.



Warning  Don't make changes to the itemDataSource or groupDataSource in your event handler. Instead, call msSetImmediate from your event handler and pass it a function that makes the changes to the data source.


ListView events execute synchronously, so avoid performing expensive operations in your event handler. Performing expensive operations in your event handler can make the ListView seem unresponsive to the user. If you need the event handler to perform an expensive operation, call setImmediate from your event handler and pass it a function that performs the operation or perform the operation as an asynchronous operation. For more info about asynchronous programming, see Asynchronous programming in JavaScript.

Setting event handlers declaratively (in HTML)

To set the event handler declaratively, it must be accessible to the global scope, and you must also call WinJS.Utilities.markSupportedForProcessing or WinJS.UI.eventHandler on the handler. You can make the handler accessible to the global scope by using WinJS.Namespace.define. For more information, see How to set event handlers declaratively.


Minimum WinJS version

WinJS 3.0



See also