用CallBack更新GridView的问题
请教各位
目前我的作法是当在客户端按下按钮 (如删除)之后
CallBack回server端操作GridView 再将操作完毕的GridView以html形式
传回客户端更新页面
问题是当我成功的编辑资料后 客户端的GridView也正确的更新了
但当我下次在CallBack回server端的时候 抓取GridView状态却是停留在 未修改前的状态.....
导致抓到不正确的数值 而无法对资料进行操作
程式码流程大概如下
Public Function GetCallbackResult() As String Implements System.Web.UI.ICallbackEventHandler.GetCallbackResult
判断命令
呼叫相对应的function(ex: DeleteData)
将要更新的html传回客户端
End Function
Public Sub DeleteData()
呼叫操作数据库function <------第二次执行到这 却发现GridView维持在 未修改前的状态
呼叫DataBind function(GridViewBind)
End Sub
Public Sub GridViewBind()
到数据库重新select资料
GridView.DataBind <-----第一次执行完 bind立刻看GridView的确是修改过的状态
End Sub
我以单步执行确定 数据库的确有更改了 也有重新bind了
怎么还会如此@@???
麻烦各位给点提示吧!
[解决办法]
不是很明白?deletedata为什么要执行两次?
[解决办法]
我还没有看你的代码,待会看。我看到你前面两段话,就有一个事实要告诉你:客户端回调并不能正常保存ViewState到客户端,但是客户端回调却要从客户端取ViewState(对应的隐藏域)到服务器。结果,回调之后,当再次回调时,服务器端控件的状态都根本是第一次回调之前的,而不是本次回调之前的。