GridView中OnRowCommand触发正常,OnRowEditing事件未触发求助
问题:GridView的Edit按钮无法触发OnRowEditing事件
你的GridView中Edit按钮未设置CommandName属性,这是导致OnRowEditing事件不触发的核心原因。GridView的内置编辑相关事件(如OnRowEditing、OnRowUpdating)依赖按钮的CommandName来识别并绑定对应的事件逻辑。
修复步骤:
修改TemplateField中的按钮,添加对应的CommandName:
<asp:TemplateField> <ItemTemplate> <%-- 给Edit按钮添加CommandName="Edit" --%> <asp:Button runat="server" Text="Edit" CommandName="Edit" /> </ItemTemplate> <EditItemTemplate> <%-- 给Update按钮添加CommandName="Update",如需Cancel按钮也需添加对应CommandName --%> <asp:Button runat="server" Text="Update" CommandName="Update" /> <asp:Button runat="server" Text="Cancel" CommandName="Cancel" /> </EditItemTemplate> </asp:TemplateField>
补充说明:
- 你的View按钮(ButtonField)已设置
CommandName="View",因此能正常触发RowCommand事件,这和内置编辑事件的触发逻辑一致,均通过CommandName匹配事件。 - 确认GridView的
OnRowEditing、OnRowUpdating、OnRowCancelingEdit属性已正确绑定到对应后端方法(当前代码已完成正确绑定)。
修改后重新运行,点击Edit按钮即可正常触发OnRowEditing事件,进入编辑模式。
内容的提问来源于stack exchange,提问作者Eray Balkanli
相关产品推荐
相关产品推荐

