问题描述
直接上图第一次删除正常第二次删除就成这样了,之前删除的又回来了我觉得可能是,Source绑定的原始的Table没有更新删除后的结果。本人新新新新手,求大神解救啊
解决方案
解决方案二:
确定按键的语句如下protectedvoidButton3_Click(objectsender,EventArgse){intj;for(j=0;j<table.Rows.Count;j++){if(TextBox1.Text==table.Rows[j][0].ToString()){table.Rows.Remove(table.Rows[j]);}}GridView1.DataSource=table;GridView1.DataBind();}求救啊
解决方案三:
代码没什么问题关键是tabie是不是在其他的地方又重新从数据库读取了数据
解决方案四:
引用2楼sinat_29915639的回复:
代码没什么问题关键是tabie是不是在其他的地方又重新从数据库读取了数据
Table是在protectedvoidPage_Load(objectsender,EventArgse)定义的是从TXT文件里读取的,大神能教教怎么结局这个问题么,在winform里面这样做都没有问题的啊
解决方案五:
删除完,执行这句试试table.AcceptChanges()
解决方案六:
引用4楼liluhua1126的回复:
删除完,执行这句试试table.AcceptChanges()
以前就试过了并不可以,不过还是谢谢你了
解决方案七:
代码里面没有删除数据源数据,一刷新又都回来了。写个删除txt数据的代码
解决方案八:
Page_Load里是怎么写的?
解决方案九:
在Page_Load里面读取txt的代码前面加判断if(!IsPostBack)
解决方案十:
table是全局变量吗?
解决方案十一:
在Page_Load里加了if(!IsPostBack)判断没有,如果没有加这句,每次页面请求都会重新从文件加载一次数据导table然后在加载的table里进行删除操作因此你每次删一条记录成功,但刷新后,被删除的记录又回来了你可以试下,删除后,按下F5,又是三条记录了
解决方案十二:
哦这个问题啊,你删除的只是table里面的一行,然后把table绑定给gridview所以才这样的,解决这个问题的办法就是操作gridview而不是操作table重新绑定,第一次加载的时候取table里的数据,删除的时候取得是gridview里的数据就行了,或者table是全局的,那么再操作table,保证table的对象不能nullcount可以为0,就不重新加载table
解决方案十三:
删除的时候获取Id,从数据库里把这个id记录删掉,在重查数据库,在绑定