asp.net – 当我在gridview中进行排序时触发了Gridview RowComma
发布时间:2020-12-16 09:19:21 所属栏目:asp.Net 来源:网络整理
导读:我陷入了一些异常的问题.当我在gridview中进行排序时,它会触发该网格的RowCommand事件而不是排序事件.下面是我的网格视图的 HTML代码. asp:GridView ID="grdDefects" runat="server" AutoGenerateColumns="False" OnPageIndexChanging="grdDefects_PageIndex
我陷入了一些异常的问题.当我在gridview中进行排序时,它会触发该网格的RowCommand事件而不是排序事件.下面是我的网格视图的
HTML代码.
<asp:GridView ID="grdDefects" runat="server" AutoGenerateColumns="False" OnPageIndexChanging="grdDefects_PageIndexChanging" OnSorting="grdDefects_Sorting" OnRowCommand="grdDefects_RowCommand" AllowSorting="true"> <PagerSettings Mode="NumericFirstLast" FirstPageText="First" LastPageText="Last" NextPageText="Next" PreviousPageText="Prev" /> <Columns> <%--<asp:TemplateField HeaderText="Id" SortExpression="ReasonID" Visible="false"> <ItemTemplate> <asp:Label ID="lblReasonID" runat="server" Text='<%# Bind("ReasonID") %>'></asp:Label> </ItemTemplate> </asp:TemplateField>--%> <asp:BoundField DataField="DefectId" HeaderText="Id" /> <asp:BoundField DataField="DefectName" HeaderText="Defect" sortExpression="DefectName" /> <asp:BoundField DataField="Department" HeaderText="Department Name" sortExpression="Department" /> <%-- <asp:ButtonField ControlStyle-CssClass="btns" ButtonType="Button" CommandName="Update" Text="Edit" > <ControlStyle CssClass="btns"></ControlStyle> </asp:ButtonField>--%> <asp:TemplateField> <ItemTemplate> <asp:Button ID="editBtn" runat="server" Text="EDIT" CommandArgument='<%# Eval("DefectId") %>' CssClass="btns"/> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> //这是处理这些事件的代码. protected void grdDefects_Sorting(object sender,GridViewSortEventArgs e) { try { if (ViewState["sortMode"] == null) { ViewState["sortMode"] = strSORT_DESC; } else if(ViewState["sortMode"]!=null) { if (ViewState["sortMode"].ToString().Equals("strSORT_ASC")) ViewState["sortMode"] = strSORT_DESC; else ViewState["sortMode"] = strSORT_ASC; } //string strSortExpression = e.SortExpression; ViewState["sortExpression"] = e.SortExpression; sort(); } catch (Exception ex) { throw ex; } } protected void grdDefects_RowCommand(object sender,GridViewCommandEventArgs e) { try { int Id = Convert.ToInt32(e.CommandArgument); Response.Redirect("AddDefect.aspx?Id=" + Id); } catch (Exception ex) { throw; } } 如何解决这个问题呢??? 解决方法
您是否尝试在grdDefects_RowCommand中检查commandName
无论何时单击GridView中的任何按钮,无论是在标题中还是在正常行中,都会触发RowCommand事件.如果排序事件,请阻止您的代码执行. 将代码从RowCommand事件移动到此块中 If (e.CommandName !="Sort") { } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 使用actionlink将文本框的值从视图传递到控
- Asp.net使用缓存 (二)
- asp.net-mvc – MvcMailer SendAsync阻止ASP.NET MVC请求吗
- asp.net – 为什么当使用ADO.NET实体数据模型映射数据库表时
- asp.net-mvc – 为什么我的视图模型中的内部成员无法在视图
- asp.net-mvc – 如何获取’System.Web.Http,版本= 5.2.3.0?
- asp.net – 无法转换类型为’System.Web.UI.LiteralControl
- asp.net-mvc – 使用ELMAH记录EventLog中的错误
- asp.net-mvc – 哪个选择:ASP.NET MVC或RESTful WCF?
- 使用可靠的WPF / .NET背景学习ASP.NET MVC
推荐文章
站长推荐
- ASP.Net Webforms和ASP.Net MVC是基于组件还是基
- asp.net – Service Fabric中的.NET Core RC2
- 如何动态地从ASP.NET MVC控制器获取数据到jQuery
- asp.net核心 – 是否可以自主托管没有IIS(不是We
- asp.net – 如何在运行时设置ObjectDataSource选
- 怎样让1+1=3?
- asp.net-mvc – ASP.NET MVC会话超时,绝对还是滑
- asp.net-mvc-3 – 如何在ASP .NET MVC 3中验证与
- ASP.NET生产力电动工具“修复混合标签”;哪一个给
- MS Chart与ASP.NET图表类型“列”不显示轴x标签,
热点阅读