将cancelupdate按钮的CauseValidation属性设为true试试
或者在cancelupdate的处理函数调用使焦点移动的指令,比如将mdi窗体setfocus

解决方案 »

  1.   

    这种情况我也碰到过,而且是修改完了必须按"Enter"键(不是每次都出现),否则修改不能生效。
    简单的办法是直接修改一下Ado记录集中任何一个字段。
    cancelupdate以后,有些控件不会和记录集中的值同步(即在cancelupdate之后不变),如DataList,DTPicker等。最好在cancelupdate之后用程序把记录集中的值写回绑定的控件。
      

  2.   

    先安装vb sp3,sp3之前的ado数据控件有很多bug.在数据控件或子窗体的validation或lostfocus事件中加入
    将绑定数据控件的datachanged属性置为true的语句,例
      grdXXX.DataChanged = True