怎么给datagrid控件,鼠标指定的行插入上一行空行或者下一空行

ruoyasoftware 2004-07-22 09:15:26
怎么给datagrid控件,鼠标指定的行插入上一行空行或者下一空行
...全文
213 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cbqtc1 2004-07-31
  • 打赏
  • 举报
回复
dim tableA as new datatable
datagrid1.datasource=tablea
dim rowA as datarow=tablea.newrow
tablea.insertat rowa,datagrid1.currentrowindex
ruoyasoftware 2004-07-26
  • 打赏
  • 举报
回复
搞了几天了,都还没有解决,大侠们帮帮忙啊???????????????????
急啊,,,,,,,,,,,,,,,,,,
ruoyasoftware 2004-07-25
  • 打赏
  • 举报
回复
谢谢水如兄的提示,,可是我做了好久,就是难以实现他们同步,并且支持删除,插入..
我水平太硕了..!!!
ruoyasoftware 2004-07-23
  • 打赏
  • 举报
回复
是啊,,,我也是刚刚做到这步啊,,晕啊!!!
第一次插入的空行,总是在下面,,,
如果提交了acceptchanges就不能更新数据了,,,
我插入一空行目的就是要用来输入数据,然后再更新到数据库中,
看来也只能用水如兄这方法了!!!!!!!!!
但是用这方法还有问题啊,,,
我如果要删除指定的行的话也不行了,,,,



水如烟 2004-07-23
  • 打赏
  • 举报
回复
上面已经说了,
要另建一个Table,同步,只是不AcceptChanges,这个用来更新数据库
水如烟 2004-07-22
  • 打赏
  • 举报
回复
这里,
mc.InsertAt(mRow, mPos.Position)
dt.AcceptChanges()
如果不AcceptChanges的话,新插入的行还是在DataGrid的底下,但是它的RowIndex确实是在双击所在行的Index
AcceptChanges后才能显示在那个位置。就是说,DataRowState是Added的在Accept之前总是DataGrid底下的。但是Accpt之后,就不能用来更新数据库的了。
水如烟 2004-07-22
  • 打赏
  • 举报
回复
刚才调试了一下
要实现你的效果不是不行,但真要做还是稍有点麻烦
要另建一个Table,显示在DataGrid上的Table在实现了你的想法后是不能用作更新的了
所以,你的另一个Table要同步,只是不AcceptChanges,这个用来更新数据库。
'在rowhead双击
Private Sub DataGrid1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.DoubleClick
Dim dt As DataTable = CType(Me.DataGrid1.DataSource, DataTable)
Dim mPos As BindingManagerBase
mPos = Me.BindingContext(dt)
If Me.DataGrid1.CurrentRowIndex <> -1 Then
Dim mc As DataRowCollection
mc = dt.Rows
Dim mRow As DataRow = dt.NewRow
mRow(0) = "9999"
mc.InsertAt(mRow, mPos.Position)
dt.AcceptChanges()
End If
End Sub

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧