J'ai une liste multicolonne paginée d'éléments avec ImageButton et LinkButton. Les commandes delete et select fonctionnent. Je ne peux pas déclencher l'événement SelectedIndexChanging, et SelectedIndex est toujours -1 dans le gestionnaire de commandes Select. Je pense que j'ai le bouton de sélection requis selon les docs. Mon but ultime est de sauvegarder l'index de l'article. Lorsque je reviens à la page, je peux restaurer la page actuelle du pager ListView afin que l'élément sélectionné soit visible. Mais je ne peux pas obtenir l'index de l'article. Ceci est pour les webforms asp.net 4.0.Index ListView sélectionné
<asp:ListView ID="ListView1" runat="server" OnItemDataBound="ListView1_ItemDataBound"
DataKeyNames="ItemID" DataSourceID="ObjectDataSource1"
OnItemCommand="ListView1_ItemCommand" GroupItemCount="2"
onselectedindexchanging="ListView1_SelectedIndexChanging">
<LayoutTemplate>
<table width="100%">
<tr>
<td>
<table class="sample" width="100%">
<asp:PlaceHolder runat="server" ID="groupPlaceHolder"></asp:PlaceHolder>
</table>
</td>
</tr>
</table>
</LayoutTemplate>
<GroupTemplate>
<tr>
<asp:PlaceHolder runat="server" ID="itemPlaceHolder"></asp:PlaceHolder>
</tr>
</GroupTemplate>
<ItemTemplate>
<td>
<asp:ImageButton ID="btnDelete" ToolTip="Delete" runat="server" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "ItemID")%>' CommandName="DeleteItem" Height="12" ImageUrl="resources/delete.gif" Width="12" />
<asp:LinkButton ID="btnSelect" runat="server" CommandName="Select" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "ItemID")%>'><%# DataBinder.Eval(Container.DataItem, "ItemName") %></asp:LinkButton>
<asp:Label ID="ccLabel" runat="server"></asp:Label>
</td>
</ItemTemplate>
</asp:ListView>
Je pense que je vais essayer la propriété DataPager.StartRowIndex à la place, persister en quelque sorte pour le retour de l'utilisateur à la page. –