问题与背景
在做.NET局部刷新GridView作业时,我不知道如何把数据库中更新的数据让GridView局部刷新显示出来,在网络上搜索没有发现一份资源是令我满意的,经过自己的摸索(单步调试——猜原因——单步调试),我终于完成了作业。
前期准备
在页面中拖入一个ScriptManager控件,然后拖入一个Updatepanel控件,需要动态刷新的数据(本文的刷新对象是GridView)就放在UpdatePanel控件中。如果你需要动态刷新的数据是通过按钮点击的,一定要把按钮也放入UpdatePanel控件中。记得不要忘了给UpdatePanel中拖入一个Timer控件,Timer控件的间隔时间属性记得修改为1000,这样每隔一秒刷新一次,方便观察调试结果。
解决方法
在对数据进行过更新后,加入一行GridView1.DataBind()重新绑定数据即可,GridView1是你GridView控件的默认名字,可自行修改。
小Tips
不要把输入框放入UpdatePanel中,因为他是实时刷新的,如果放进去了,你输入的内容会隔一会儿就被刷掉。
折磨之处
一开始不知道要把Button也放入UpdatePanel中,还给GridView控件重新绑定了DataSource,结果报错说已经绑定了DataSourceID,因为我一开始就给GridView设置了数据源,令他的DataSourceId=SqlDataSource1。最浪费时间的就是这个重新绑定数据了,花了我3个多小时,真的太难了。