C# Listview中的ItemCommand未在usercontrol中激发
我有一个用户控件,它在项目模板中有linkbutton,我试图在代码中捕获Itemcommand事件,但是没有触发该事件 我也问过其他类似的问题,但对我没有帮助。下面是我的代码片段,有人能帮我吗 列表视图-C# Listview中的ItemCommand未在usercontrol中激发,c#,asp.net,C#,Asp.net,我有一个用户控件,它在项目模板中有linkbutton,我试图在代码中捕获Itemcommand事件,但是没有触发该事件 我也问过其他类似的问题,但对我没有帮助。下面是我的代码片段,有人能帮我吗 列表视图- <asp:ListView runat="server" ID="lvTherapeuticAlternatives" OnItemCommand="TherapeuticAlternatives_OnItemCommand"> 单击ListView控件中的按钮时引发Item
<asp:ListView runat="server" ID="lvTherapeuticAlternatives" OnItemCommand="TherapeuticAlternatives_OnItemCommand">
单击ListView控件中的按钮时引发ItemCommand事件。这使您能够在发生此事件时执行自定义例程
并且在ListView上没有任何按钮或任何其他类型的控件可以引发回发;因此,永远不会引发ItemCommand处理程序
更新
如果您这样声明LinkButton(只注意OnClick事件):
Item命令没有触发,这是因为我在页面加载事件中有一个ISPostback检查,所以它拒绝事件处理程序调用为ItemCommand事件注册的方法
当我在webcontrol中删除IsPostback检查时,事件被触发。我在listview控件中有链接按钮。这是-asp:LinkButton ID=“lnkMedSelection”runat=“server”CommandName=“selecteded”CommandArgument=''@sent这没问题,但这对您有帮助吗?你知道要触发那个事件需要做什么吗?@Senthil你知道,但那个按钮没有“OnClick”事件,只有
CommandArgument
和CommandName
definedtanks lcarus,所以我需要为OnClick添加一个处理程序吗?你能给我更多的信息吗?@Senthil我刚刚更新了我的答案。看一看。这就是你需要做的。我自己测试了代码,它运行正常。
<ItemTemplate>
<tr class='data'>
<td style="width:210px;">
<asp:LinkButton ID="lnkMedSelection" runat="server" CommandName="SelectedMed" CommandArgument='<%#Eval("NDC") & ", " & Eval("DrugGenericProductID") %>' >
<asp:Label ID="lblDrugName" runat="server" Text='<%# Eval("DrugDescription") %>' />
</asp:LinkButton >
</td>
<td style="width:70px;" align="center">
<asp:Label ID="lblBrandGeneric" runat="server" Text='<%# Eval("descBrandGeneric") %>' />
</td>
<td style="width:110px;" align="center">
<asp:Label ID="lblStatus" runat="server" Text='<%# Eval("FormularyStatusDescription") %>' />
</td>
<td style="width:210px;" align="left">
<asp:Label ID="lblFlat" runat="server" Text='<%# Eval("CopayInfo") %>' />
</td>
</tr>
</ItemTemplate>
Protected Sub TherapeuticAlternatives_OnItemCommand(ByVal sender As Object, ByVal e As ListViewCommandEventArgs) Handles lvTherapeuticAlternatives.ItemCommand
End Sub
<asp:LinkButton ID="lnkMedSelection" OnClick="lnkMedSelection_Click" runat="server" CommandName="SelectedMed" CommandArgument='<%#Eval("NDC") & ", " & Eval("DrugGenericProductID") %>' >
Protected Sub lnkMedSelection_Click(sender As Object, e As EventArgs)
' Do something here for example:
Label2.Text = "Linked button clicked"
End Sub
Protected Sub TherapeuticAlternatives_OnItemCommand(ByVal sender As Object, ByVal e As ListViewCommandEventArgs) Handles lvTherapeuticAlternatives.ItemCommand
'Notice how this event is also raised.
' You can put a break point or simply test with a label as so:
Label1.Text = "ItemCommand Fired"
End Sub