首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

为何datagrid在编辑第二页的第一条记录时总是显示第一页的第一条记录处于编辑状态

2011-12-13 
为什么datagrid在编辑第二页的第一条记录时总是显示第一页的第一条记录处于编辑状态//数据绑定privatevoid

为什么datagrid在编辑第二页的第一条记录时总是显示第一页的第一条记录处于编辑状态
//数据绑定    
private     void     databind()    
                                              {                
                                                                      SqlDataAdapter     da     =     new     SqlDataAdapter( "select     *     from     ptype ",tool.connStr);    
                                                                      DataSet     ds     =     new     DataSet();    
                                                                      try    
                                                                      {    
                                                                                              //从指定的索引开始取PageSize条记录    
                                                                                              da.Fill(ds,startIndex,DataGrid1.PageSize, "CurDataTable ");    
                                                                                              //填充数据集    
                                                                                              da.Fill(ds, "AllDataTable ");    
                                                                                              //设置DataGrid控件实际要显示的项数    
                                                                                              DataGrid1.VirtualItemCount     =     ds.Tables[ "AllDataTable "].Rows.Count;    


                                                                                              //进行数据绑定    
                                                                                              DataGrid1.DataSource     =     ds.Tables[ "CurDataTable "];    
                                                                                              DataGrid1.DataBind();    
                                                                      }    
                                                                      catch(Exception     error)    
                                                                      {    
                                                                                              Response.Write(error.ToString());    
                                                                      }                            
//编辑datagrid    
private     void     DataGrid1_EditCommand(object     source,     System.Web.UI.WebControls.DataGridCommandEventArgs     e)    
                                              {        
                                                          this.DataGrid1.EditItemIndex=e.Item.ItemIndex;    
                                                          this.databind();    


                                              }    
//自定义分页    
private     void     DataGrid1_PageIndexChanged(object     source,     System.Web.UI.WebControls.DataGridPageChangedEventArgs     e)    
                                              {    
                                                                      this.DataGrid1.CurrentPageIndex=e.NewPageIndex;    
                                                                      startIndex     =     DataGrid1.PageSize     *     DataGrid1.CurrentPageIndex;    
                                                                      this.databind();    
                                              }    
希望高手帮帮我谢谢了!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1

[解决办法]
//自定义分页

this.DataGrid1.EditItemIndex = -1
[解决办法]
page_load里加
if(ispostback)
{
bind();
}
[解决办法]
那就把页码算进去
[解决办法]
注意 ispostback

热点排行