Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:代码修改

1楼
明丰 发表于:2011/9/3 20:53:00

当同时删除多行时,出错:

 

错误代码位置:表,货品资料,BeforeDeleteDataRow

System.NullReferenceException: 未将对象引用设置到对象的实例。
   在 UserCode.BeforeDeleteDataRow(DataRowEventArgs e)

 

 

请问下面代码如何修改?

 

Dim d1 As String = CurrentTable.Current("一级类别") '

Dim d2 As String = CurrentTable.Current("二级类别")
Dim d3 As String = CurrentTable.Current("三级类别")
Dim d4 As String = CurrentTable.Current("四级类别")
Dim d5 As String = CurrentTable.Current("五级类别")
Dim d6 As String = CurrentTable.Current("六级类别")
Dim dr1 As List(of DataRow) = e.DataTable.Select("一级类别 Like '" & d1 & "'") '

Dim dr2 As List(of DataRow) = e.DataTable.Select("一级类别 Like '" & d1 & "'And 二级类别 Like '" & d2 & "'")
Dim dr3 As List(of DataRow) = e.DataTable.Select("一级类别 Like '" & d1 & "'And 二级类别 Like '" & d2 & "'And 三级类别 Like '" & d3 & "'")
Dim dr4 As List(of DataRow) = e.DataTable.Select("一级类别 Like '" & d1 & "'And 二级类别 Like '" & d2 & "'And 三级类别 Like '" & d3 & "'And 四级类别 Like '" & d4 & "'")
Dim dr5 As List(of DataRow) = e.DataTable.Select("一级类别 Like '" & d1 & "'And 二级类别 Like '" & d2 & "'And 三级类别 Like '" & d3 & "'And 四级类别 Like '" & d4 & "'And 五级类别 Like '" & d5 & "'")
Dim dr6 As List(of DataRow) = e.DataTable.Select("一级类别 Like '" & d1 & "'And 二级类别 Like '" & d2 & "'And 三级类别 Like '" & d3 & "'And 四级类别 Like '" & d4 & "'And 五级类别 Like '" & d5 & "'And 六级类别 Like '" & d6 & "'")
Dim d7 As String = "该行包含类别, 是否删除?"
If (dr6 IsNot Nothing And dr6.count = 1) OrElse (dr5 IsNot Nothing And dr5.count = 1) OrElse (dr4 IsNot Nothing And dr4.count = 1) OrElse (dr3 IsNot Nothing And dr3.count = 1) OrElse (dr2 IsNot Nothing And dr2.count = 1) OrElse (dr1 IsNot Nothing And dr1.count = 1) Then
If MessageBox.Show(d7,"提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.No Then
        e.Cancel= True
Else

End If
End If

2楼
czy 发表于:2011/9/3 22:24:00

不要这样定义Dim d1 As String = CurrentTable.Current("一级类别") '

 

改成这样试试:

 

Dim dr As DataRow = e.DataRow
Dim dr1 As List(of DataRow) = e.DataTable.Select("一级类别 Like '" & dr("一级类别") & "'") '
Dim dr2 As List(of DataRow) = e.DataTable.Select("一级类别 Like '" & dr("一级类别") & "'And 二级类别 Like '" & dr("二级类别") & "'")
Dim dr3 As List(of DataRow) = e.DataTable.Select("一级类别 Like '" & dr("一级类别") & "'And 二级类别 Like '" & dr("二级类别") & "'And 三级类别 Like '" & dr("三级类别") & "'")

…………

3楼
明丰 发表于:2011/9/3 22:54:00
谢谢!
共3 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 2 queries.