2016-05-12 56 views
0

我有一個GridView,它在編輯模式下工作,但更新後,它不會回到正常(非編輯)模式。 gridview.EditIndex = -1不起作用。GridView1.EditIndex = -1不工作

這裏的設計:

<asp:TemplateField ItemStyle-Width="" HeaderText="Action"> 
    <EditItemTemplate> 
     <asp:LinkButton ID="lnkUpdate" runat="server" CommandName="Update" CssClass="btn btn-xs btn-primary" 
      Text="<i class='fa fa-pencil-square-o' style='color:black'></i> Update"></asp:LinkButton> 
     <asp:LinkButton ID="lnlCancel" runat="server" CommandName="Cancel" CssClass="btn btn-xs btn-success" 
      Text="<i class='fa fa-ban' style='color:black'></i> Cancel"></asp:LinkButton> 
    </EditItemTemplate> 
    <ItemTemplate> 
     <asp:LinkButton ID="lnkedit" runat="server" CssClass="btn btn-xs btn-primary" Text="<i class='fa fa-pencil' style='color:black'></i> Edit" 
      CommandName="Edit"></asp:LinkButton> 
     <asp:LinkButton ID="lnkNotify" runat="server" CssClass="btn btn-xs btn-success" 
      CommandArgument='<%# Eval("ID")%>' 
      OnClientClick="return confirm('Do you want to send notification?')" 
      Text="<i class='fa fa-bell-o' style='color:black'></i> Notify" OnClick="Notify"></asp:LinkButton> 
     <asp:LinkButton ID="lnkRemove" runat="server" CssClass="btn btn-xs btn-danger" 
      CommandArgument='<%# Eval("ID")%>' 
      OnClientClick="return confirm('Do you want to delete?')" 
      Text="<i class='fa fa-trash-o' style='color:black'></i> Delete" OnClick="Delete"></asp:LinkButton> 
    </ItemTemplate> 
</asp:TemplateField> 

下面是C#代碼:

protected void UpdateInfo(object sender, GridViewUpdateEventArgs e) 
{ 
    try 
    { 
     GridViewRow row = gv.Rows[e.RowIndex]; 
     new dalSchool().UpdateLandInfo(row, Session["Uid"].ToString()); 
     BindData(); 
     gv.EditIndex = -1; 
     MessageController.Show(MessageCode.UpdateSucceeded, MessageType.Confirmation, Page); 
    } 
    catch (Exception ex) 
    { 
     MessageController.Show(MessageCode.UpdateFailed, MessageType.Error, Page); 
    } 
} 

回答

0

您需要設置前EditIndex你綁定GridView的。

protected void UpdateInfo(object sender, GridViewUpdateEventArgs e) 
{ 
    try 
    { 
     GridViewRow row = gv.Rows[e.RowIndex]; 
     new dalSchool().UpdateLandInfo(row, Session["Uid"].ToString()); 
     gv.EditIndex = -1; 
     BindData(); 
     MessageController.Show(MessageCode.UpdateSucceeded, MessageType.Confirmation, Page); 
    } 
    catch (Exception ex) 
    { 
     MessageController.Show(MessageCode.UpdateFailed, MessageType.Error, Page); 
    } 
} 
+0

我也試過,但同樣的問題。 –