Hay que definir templates:
que es el elemento definido en la variable ItemPlaceholderID="PlaceHolder1".
Ejemplo de definición
ItemPlaceholderID="PlaceHolder1"
onitemcommand="ListViewDirectorios_ItemCommand" >
<LayoutTemplate>
<asp:Panel ID="Panel1" runat="server" ScrollBars="Auto" Height="300px" >
<table cellpadding="1" border="0" runat="server" id="tblProducts" >
<tr id="Tr1" runat="server">
<th id="Th1" runat="server" style="width:10%;" />
<th id="Th2" runat="server" style="width:90%;text-align:center;"/>
</tr>
<tr runat="server" id="PlaceHolder1" />
</table>
</asp:Panel>
</LayoutTemplate>
<SelectedItemTemplate>
<tr id="Tr2" runat="server" >
<td>
<asp:Image ID="ImagenFichero" runat ="server" ImageUrl='~/image/GestorDocumental/32x32/favorites.jpg' />
</td>
<td>
<asp:Label ID="NombreFichero" runat="server" Text='<%# Eval("Nombre") %>' Font-Bold="true" />
</td>
</tr>
</SelectedItemTemplate>
<ItemTemplate>
<tr id="Tr1" runat="server" >
<td>
<asp:Image ID="ImagenDirectorio" runat ="server" ImageUrl='<%# Eval("Icono") %>' />
</td>
<td>
<%-- <%# Eval("Nombre") %>--%>
<asp:LinkButton runat="server" CommandArgument='<%# Eval("Nombre") %>' CommandName="ComandoDirectorio" ID="Directorio" ><%# Eval("Nombre") %></asp:LinkButton>
</td>
</tr>
</ItemTemplate></asp:ListView>
Definición de métodos
El principal y casi único evento es el ItemCommand
protected void ListViewDirectorios_ItemCommand(object sender, ListViewCommandEventArgs e)
En el se lee el tipo de cpomando que se ejecuto:
switch (e.CommandName.ToString())
Y el valor recogido como argumento:
e.CommandArgument
Este evento es lanzado por un componente que tenga el valor Command Argument y Comand Name como el del ejemplo, situado en el
<asp:LinkButton runat="server" CommandArgument='<%# Eval("Nombre") %>' CommandName="ComandoDirectorio" ID="Directorio" ><%# Eval("Nombre") %></asp:LinkButton>
No hay comentarios:
Publicar un comentario