前台:
<f:Grid ID="Grid1" EnableFrame="true" EnableCollapse="true" PageSize="10" ShowBorder="true" ShowHeader="false" AllowPaging="true" runat="server" DataKeyNames="Id" IsDatabasePaging="true" AllowCellEditing="true" ClicksToEdit="1" EnableAfterEditEvent="true" OnRowDataBound="Grid1_RowDataBound" AutoPostBack="false"> 后台: protected void Grid1_AfterEdit(object sender, GridAfterEditEventArgs e) { Dictionary<int, Dictionary<string, string>> modifiedDict = Grid1.GetModifiedDict(); AccountGroup agBll = new AccountGroup(); foreach (int rowIndex in modifiedDict.Keys) { Guid id = ValidateHelper.GetNullableGuid(Grid1.DataKeys[rowIndex][0].ToString()); AccountGroupEntity entity = agBll.Select(id); entity.Name = txtGroupName.Text.Trim(); try { agBll.Update(entity); Grid1.Rows.Clear();
} catch (Exception ex) { Alert.Show(ex.ToString(),MessageBoxIcon.Error); } } BindData(false); } 第一次编辑的时候,保存正常。编辑第二行数据时,会将第一次编辑的更新为第二行的数据,第二行反而会被清空
比如: AA BB CC DD
第一次操作将AA更新为A,正常。第二次操作,将BB更新为B时,会将第一行已更新的A更新为B。第二行的BB反被清空
|