trochę późno, ale postaram się odpowiedzieć na pytanie, jak miał ten sam problem i znalazł rozwiązanie. Trzeba oddać własność pozycjach ListViewItemEventArgs do ListViewDataItem, a następnie można uzyskać dostęp do właściwości DataItem tego obiektu, na przykład:
Private Sub listView_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.ListViewItemEventArgs) Handles productsList.ItemDataBound
If e.Item.ItemType = ListViewItemType.DataItem Then
Dim dataItem As Object = DirectCast(e.Item, ListViewDataItem).DataItem
...
End Sub
Następnie można rzutować obiektu dataItem do jakiegokolwiek rodzaju swoją granicę celem było. Różni się to od tego, jak inne formanty databoundów, takie jak praca repeatera, gdzie DataItem jest właściwością w argumencie zdarzenia dla metody DataBound.
Dzięki za poprawkę George. –