你先做一个实验,看你的UPDATE代码是否正确:
把某一个字段的值保存为当前的日期时间如果上面的检测正确,我想出现你这样的问题的原因可能是你的数据绑定的问题:
1——
你的数据绑定是放在Page_Load中的吗?
2——
你的数据绑定是否在每一次Page_Load中都执行吗?
如果是,则把它修改为第一次LOAD时执行:
if(!IsPostBack)
{
数据绑定
}
3——
在你完成第二步的时候,对于EDIT、UPDATE命令,在执行完后再对DATAGRID进行一次数据绑定。

解决方案 »

  1.   

    我想你是对的,我没有把它(DATABINDING)放在
    if(!IsPostBack)
    {
    }内,所以每次刷新页面是又从新绑定原来的值,
    可是现在我把她放在里面又有新问题,我在单击
    "EDIT"时,页面是一片空白,什么也没有。
    private void Page_Load(object sender, System.EventArgs e)
    {
         if(!Page.IsPostBack)
    {

    DataGrid1.DataSource=ds;   //ds is a DataSet
    DataGrid1.DataMember="combinetable"; //combinetable is the name DataGrid1.DataBind();                // of a DataTable I created
    conn.Close();
     }
    }
    private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    DataGrid1.EditItemIndex=e.Item.ItemIndex;
    DataGrid1.DataBind();
    }
    你还有一些什么建议。谢谢
      

  2.   

    我想你是对的,我没有把它(DATABINDING)放在
    if(!IsPostBack)
    {
    }内,所以每次刷新页面是又从新绑定原来的值,
    可是现在我把她放在里面又有新问题,我在单击
    "EDIT"时,页面是一片空白,什么也没有。
    private void Page_Load(object sender, System.EventArgs e)
    {
         if(!Page.IsPostBack)
    {

    DataGrid1.DataSource=ds;   //ds is a DataSet
    DataGrid1.DataMember="combinetable"; //combinetable is the name DataGrid1.DataBind();                // of a DataTable I created
    conn.Close();
     }
    }
    private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    DataGrid1.EditItemIndex=e.Item.ItemIndex;
    DataGrid1.DataBind();
    }
    你还有一些什么建议。谢谢
      

  3.   

    使用下面的方法解决:
    Page_Load(...)
    {
    if(!IsPostBack)
    {
    this.myDataBind();
    }
    }
    private void myDataBind()
    {
    //数据绑定操作
    }
    EditMethod(...)
    {
    //你的相关处理
    this.myDataBind();
    }
    UpdateMethod(...)
    {
    //你的更新处理
    this.myDataBind();
    }
      

  4.   

    我基本上明白你的意思了。但是 我单击“EDIT”  以后
    Page_Load会再执行一边。
    我用debug查的过程发现,当Page_Load执行这遍时没有进行datainding
    整个事件停在
    Call Stack
    projects.dll!projects.WebForm1.Page_Load(System.Object sender ={ASP.WebFORM1_aspx}, System.EventArgs e={System.EventArgs})没有调用
    private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {DataGrid1.EditItemIndex=e.Item.ItemIndex;
    this.myDataBind();
    }
    所以我的页面是空白,你有没有建议?不过已经很感谢你了。
      

  5.   

    连debug都不能进行了,只有停止或重来。真是烦。
      

  6.   

    这说明你的DATAGRIDEDITCOMMAND有问题,没有做好。
    我使用上面的方法成功实现。
    你把你的代码贴出来,怎么样?
      

  7.   

    这说明你的DATAGRIDEDITCOMMAND有问题,没有做好。
    我使用上面的方法成功实现。
    你把你的代码贴出来,怎么样?
      

  8.   

    我基本上有点眉目了,非常感谢,我再自己试试。非常感谢。有问题我通过messenge找你。
    怎么给你分呢?