首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

WinForm下DataGridView编辑状态下删除最后一行有关问题

2012-01-02 
WinForm下DataGridView编辑状态下删除最后一行问题DataGridView非绑定DataTable,dgv的Cell值是手工输入的,

WinForm下DataGridView编辑状态下删除最后一行问题
DataGridView   非绑定DataTable   ,dgv的Cell值是手工输入的,在输入过程(编辑状态)想删除最后一行,我是这的dGV_GList.Rows.RemoveAt(dGV_GList.Rows.Count-1);
这时出错提示:无法删除未提交的新行   ,请高手们帮解决.
问题解决的第一个代码给80分,剩余分顶者平分
谢谢了

[解决办法]
不懂,帮顶
[解决办法]
你跟踪一下,看看它的值对不对
[解决办法]
没做过lz那样的东东,不过我觉得错误提示也挺明显啦,lz插入的行还没有提交吧,只是纯粹的缓存(按lz意思连datatable也没写入),应该不能直接删除了
[解决办法]
期待高手来解决
帮顶
[解决办法]
结束DataGridView的编辑状态再删
DataGridView.endedit();
[解决办法]
你通过设置DataGridView.AllowUserToAddRows=False可以去掉最后一行,
最后一行实际上是一个未添加到行集中的新的临时行,你不能手动的来删除它.
[解决办法]
同意楼上。把AllowUserToAddRows属性置为false即可。
[解决办法]
同意,
---------------------
回复人:hbxtlhx(平民百姓)
你通过设置DataGridView.AllowUserToAddRows=False可以去掉最后一行,
最后一行实际上是一个未添加到行集中的新的临时行,你不能手动的来删除它.
----------------------------
以前碰到过这样的问题`````````
[解决办法]
我以前用VB.net时删除Datagrid的最后一条记录时是这样写的:
Private Sub dgidinfo_ItemCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles dgidinfo.ItemCreated
If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.EditItem) Then
Dim mycell As TableCell

mycell = e.Item.Cells(e.Item.Cells.Count - 1)
Dim btndel As LinkButton = CType(mycell.Controls(0), LinkButton)
btndel.Attributes.Add( "onclick ", "return confirm( '您真的要删除此项记录吗? ') ")
End If
End Sub
[解决办法]
现让GridView 选中 其他行
在删除
dGV_GList.select();//选中 第一行
dGV_GList.Rows.RemoveAt(dGV_GList.Rows.Count-1);
[解决办法]
同意!
一种办法是设置AllowUserToAddRows属性
还有觉得不必每编辑一个Cell就保存吧,最后确定要更新表的时候,如不想要最后一行,则清空就可以了

热点排行