0
ItemCommand 이벤트에서 트리거하려는 버튼 열을 삽입 한 ListView를 만들었지 만 버튼을 누르면 버튼로드가 발생하지만 아무 것도 발생하지 않습니다 (ItemCommand 이벤트는 발생하지 않음). 화재).Listvew ItemCommand가 실행되지 않음
<asp:ListView ID="ListView_documenti" runat="server" OnLoad="carica_ListView" OnItemCommand="esegui_comando">
<LayoutTemplate>
<table id="Table1" runat="server" class="ListViewUCSS">
<tr id="Tr1" runat="server">
<td id="Td1" runat="server">
<table ID="itemPlaceholderContainer" runat="server" border="0" style="" >
<tr id="Tr2" runat="server" class="ListViewUHEADER">
<th id="Th0" runat="server" style="width:40%">Nome File</th>
<th id="Th3" runat="server" style="width:20%">Vedi</th>
</tr>
<tr ID="itemPlaceholder" runat="server"></tr>
</table>
</td>
</tr>
<tr id="Tr3" runat="server">
<td id="Td2" runat="server" style="">
</td>
</tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr class="ListViewUTENTI">
<td><asp:Label ID="nomeLabel" runat="server" Text='<%# Eval("nome") %>' /></td>
<td><asp:button ID="vediDocButton" runat="server" Text="Vedi documento" CommandName="vedi_doc" /></td>
</tr>
</ItemTemplate>
<AlternatingItemTemplate>
<tr class="ListViewUTENTIALTERNATING">
<td><asp:Label ID="nomeLabel" runat="server" Text='<%# Eval("nome") %>' /></td>
<td><asp:button ID="vediDocButton" runat="server" Text="Vedi documento" CommandName="vedi_doc" /></td>
</tr>
</AlternatingItemTemplate>
<EmptyDataTemplate>
<table id="Table1" runat="server" style="">
<tr>
<td>Nessun documento caricato per il seguente trust.</td>
</tr>
</table>
</EmptyDataTemplate>
이것은 또한 귀하의 onload 이벤트 코드를 변경할 수 ItemCommand 이벤트
protected void esegui_comando(object sender, ListViewCommandEventArgs e)
{
ListViewItem item = e.Item;
Label etichetta = (Label)item.FindControl("nomeLabel");
etichetta = (Label)e.Item.FindControl("nomeLabel");
//a questo punto capisco che button ha scatenato l'evento
switch(e.CommandName)
{
case "vedi_doc":
//indirizzo la pratica verso la pagina di visione delle pratiche
Response.Redirect("../scarica_documento.aspx?n=" + etichetta+"&c="+cartella);
break;
}
}
코드 숨김에서 목록보기를 어디서 어떻게 바인딩합니까? 모든 페이지로드시 리 바인딩 되나요? –
필자는 ListView를 onLoad 이벤트 ("carica_ListView"기능 포함)에 바인딩하고 모든 페이지로드시에 실행합니다. –
이제 "carica_ListView"함수를 init 이벤트로 이동하고 ItemCommand 이벤트가 작동합니다. –