求教Datatable中如何删除行的问题

问题描述

我用listBox绑定了一个dataset,然后用下面的语句删除选中的行savingsDataSet.Table1.Rows[listBox1.SelectedIndex].Delete();但是为什么执行一次删除后第[0]行显示的值变成了listBox1.SelectedIndex的值,也就是被删除的行数啊?

解决方案

解决方案二:
savingsDataSet.Table1.Rows.RemoveAt(listBox1.SelectedIndex);//试试
解决方案三:
试过啊,效果一样。。。
解决方案四:
我也有这个问题,辛辛苦苦写入的第零行数据全被覆盖了,真郁闷。求大牛解释
解决方案五:
savingsDataSet.Table1.Rows[listBox1.SelectedIndex].Delete();这个方法应该是只删除DataSet产生的临时数据库里的数据,不对源数据库数据操作
解决方案六:
引用4楼pengkangde的回复:

savingsDataSet.Table1.Rows[listBox1.SelectedIndex].Delete();这个方法应该是只删除DataSet产生的临时数据库里的数据,不对源数据库数据操作

就算是删临时数据库也不应该出现这种情况吧。。
解决方案七:
dt.acceptchanges试试
解决方案八:
引用6楼thanatos_lum的回复:

dt.acceptchanges试试

试过。。不行
解决方案九:
找不到原因就暂时绕过去吧...再定义一个dataset吧,然后把数据源拷贝过去,删除时对新建的dataset操作....

时间: 2024-09-20 00:52:43

求教Datatable中如何删除行的问题的相关文章

关于删除datatable中的一行

问题描述 datatable里面添加了5行,其中每行最前面的Y1,Y2-Y5为标识,是添加后自动生成的,现在我要删除其中的一行,譬如删除光标指定的Y3行,并且Y3之后的Y4,Y5-自动变为Y3,Y4-那删除按钮的代码应该怎么写?还有就是当datatable并没有一行显示的时候,删除按钮就不可用,应该怎么写? 解决方案 解决方案二:用模板列实现删除(控件自带的删除功能亦可用)修改自动生成的列要看你的表结构解决方案三:datatable里面添加了5行,其中每行最前面的Y1,Y2-Y5为标识,是添加后

DataTable中数据记录的统计

数据|统计 DataTable中数据记录的统计 我们在使用Sql Server这些数据库时,可以轻松的通过Sum.Aver.Count等统计出相关结果,那么,在已经把数据检索出来的DataSet(DataTable)中呢?特别是通过Web Service获得了DataSet,这个时候,可是没有办法回头去修改Select语句来获取这些统计了.那么在DataSet/DataTable中是否可以进行统计呢?答案是肯定的. 在MSDN中,有一篇MS推荐的统计方法,就是逐行对数据进行求和统计,这个方法,其

不用SQL语句查询DataTable中的数据

数据|语句 在实际编程工程中,常常遇到这样的情况:DataTable并不是数据库中的,或者DataTable尚未写到数据库,或者从数据库中读出的DataTable已经在本地被改动,又没有写回数据库(可能还要作其他改动),在这些情况下,要查询DataTable中的数据,强大的SQL语言就派不上用场了. 有些.NET程序员采取在数据库中建立临时表等方法来解决这类查询问题.而我觉得这种方法不可行,其实只要用.NET类库中提供的DataView类的强大功能(主要是用它的RowFilter属性),就能方便

C# DataTable中查询指定字段名称的数据

这篇文章主要介绍了C# DataTable中查询指定字段名称的数据,本文直接给出实例代码,简单易懂,需要的朋友可以参考下 1.查询后获取对应的数据集后,传递参数strcodeName,根据数据集中strcodeName的匹配对应字段,获取数据集中对应的目的字段 代码如下: private string GetStrName(DataTable dtable, string strcodeName) { string Name = strcodeName; DataRow[] dr = dtabl

link中如何多线程从DataTable中获取数据?有没有高效不出错的办法?

问题描述 link中如何多线程从DataTable中获取数据?有没有高效不出错的办法? link中如何多线程从DataTable中获取数据?有没有高效不出错的办法?

求教Myeclipse中启动weblogic失败

问题描述 求教Myeclipse中启动weblogic失败 先前在myeclipse10中装了weblogic12,是可以跑起来的.之后自己手动部署了一下项目,直接手动启动weblogic,可以启动,但是Myeclipse中的weblogic却是启动不起来了,求大神指教. 报错如下: 解决方案 怎么报错的?没看到截图呢 解决方案二: 已解决,是原来在weblogic的jdk中配置了参数,现在把参数去掉就OK了. 解决方案三: OK,解决了就好,这样下一次遇到同样的问题,思路会更清晰.

mysql-新手求教 java中使用MYsql后查询结果怎么输出到别的地方

问题描述 新手求教 java中使用MYsql后查询结果怎么输出到别的地方 按钮点击事件做完了能连接到数据库可惜输入条件后点击查询只在Eclipse中显示数据库连接成功 而查询并没有显示查询结果 求解 解决方案 在后台找执行的sql,在 数据库中查询,看有没有数据 解决方案二: 参考 http://zhidao.baidu.com/question/559756306057754404.html 解决方案三: 数据库查询结果,可以直接用System.out.print打印到控制台界面: 也可以创建

winform 中 把datagrid 中的记录存到DataTable中

问题描述 winform 中 把datagrid 中的记录存到DataTable中 winform 中 把datagrid 中的记录存到DataTable中 怎么操作 大神们 帮帮忙撒.... 解决方案 手写的,自己参考下 DataTable dt = new DataTable(); dt.Columns.Add("第一列"); dt.Columns.Add("第二列"); foreach (var item in datagrid.Rows) { DataRow

C# DataTable中返回列中的最大值

此处以表dt2中的keyIndex列(int类型)为例 1.通过linq来实现 int maxKeyIndex = dt2.AsEnumerable().Select(t => t.Field<int>("keyIndex")).Max(); Linq语法:点击打开链接2.通过Compute方法来实现 int ee = (int)dt2.Compute("Max(keyIndex)", "true"); Compute方法:点击