各位老师,继续昨天的那个问题
此主题相关图片如下:2012911-002.jpg
我设计了如下代码想在子节点重命名后更新表中相关列的所有旧数据:
If e.NewText = "" Then
e.Cancel = True
Return
End If
Dim pth() As String = e.Node.FullPath.Split("\")
Select Case e.node.Level
Case 0
DataTables("项目分类").ReplaceFor("项目名称",e.NewText,"项目名称 = '" & pth(0) & "'")
Case 1
DataTables("项目分类").ReplaceFor("罗列值",e.NewText,"项目名称 = '" & pth(0) & "' And 罗列值 = '" & pth(1) & "'")
For Each tb As DataTable In DataTables
For Each dc As DataCol In tb.DataCols
If dc.name = e.node.ParentNode.Text Then
Dim dr As DataRow
Dim s As String = dr(dc.name)
DataTables(tb).ReplaceFor(dc.name,e.NewText,"dr(dc.name) = '" & pth(1) & "'")
End If
Next
Next
End Select
e.Node.Name = e.NewText
此主题相关图片如下:360截图20120911-001.jpg
但红色那句通不过,意思是在表中找到目标列后,用e.NewText替换掉dc.name列中 = '" & pth(1) & "'的值,请指点
谢谢!