我试图删除GridView中的一行,方法是输入type=“image”,该行的ID与图像关联,因此如果您单击该图像,它将调用www.example.com中的函数asp.net,并根据该ID从数据库中删除该记录,然后重新加载该网格。最好的方法是什么?谢谢您的帮助。
<asp:GridView ID="grdHouses" runat="server"
CssClass="gridview"
RowStyle-CssClass="gridview_itm"
AlternatingRowStyle-CssClass="gridview_aitm"
HeaderStyle-CssClass="gridview_hdr" Width="100%" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField HeaderText="" ItemStyle-Width="2%">
<ItemTemplate>
<input type="image" name="imgDelete" class="listViewTdToolsS1" src="../App_Themes/Sugar2006/images/delete_inline.gif" alt="rem" style="height:12px;width:12px;border-width:0px;" value=""
<%# DataBinder.Eval(Container.DataItem, "ID") %>">
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="Name_SortLnkBtn" runat="server" Text="NAME" ToolTip="Click to Sort Column" CommandName="Sort" CommandArgument="Name" CausesValidation="false" />
<asp:ImageButton ID="Name_SortImgBtn" runat="server" Visible="false" ToolTip="Click to Sort Column" CommandName="Sort" CommandArgument="Name" CausesValidation="false" />
</HeaderTemplate>
<ItemTemplate>
<%#Eval("Name")%>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="Description_SortLnkBtn" runat="server" Text="DESCRIPTION" ToolTip="Click to Sort Column" CommandName="Sort" CommandArgument="Description" CausesValidation="false" />
<asp:ImageButton ID="Description_SortImgBtn" runat="server" Visible="false" ToolTip="Click to Sort Column" CommandName="Sort" CommandArgument="Description" CausesValidation="false" />
</HeaderTemplate>
<ItemTemplate>
<%#Eval("Description")%>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
2条答案
按热度按时间wz1wpwve1#
命令按钮:
处理GridView OnItemCommand事件:
由于DataSource是在代码隐藏中设置的,因此我建议使用 DeleteItem 或其他名称代替 Delete 作为命令名。
kgsdhlau2#
首先在网格视图中添加DataKeyName,如下所示
然后在代码后台使用网格视图的行删除