TreeView节点重命名时的问题,有几个Bug,不知道怎么调试

zqmillet 2010-08-19 04:44:54

Private Sub FolderTreeView_AfterLabelEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.NodeLabelEditEventArgs) Handles FolderTreeView.AfterLabelEdit

Dim xmlDoc As XmlDocument = New XmlDocument()
xmlDoc.Load(xmlPath)
Dim xPath As String
xPath = GetXPath(focusNode.FullPath.Replace("\", "/"))
xPath = "/" & xPath

Dim xmlNode As XmlNode = xmlDoc.SelectSingleNode(xPath)
'以上定位XML中的节点的过程
If HasChildNodeNamed(focusNode.Parent, e.Label) Then '判断同目录下是否有同名文件夹
MessageBox.Show("此目录已经包含名为""" & e.Label & """的文件夹", "警告")
e.CancelEdit = True
Else
If e.Label = "" Then '判断新的名字是否为空
MessageBox.Show("目录名不能为空", "警告")
e.CancelEdit = True
Else
If isFileNameRight(e.Label) Then '判断时候符合命名规则
xmlNode.Attributes("Name").Value = e.Label.Trim() '改写XML中的相关节点的属性,并去掉前后的空格
FolderTreeView.SelectedNode.Text = e.Label.Trim() '修改被修改节点显示文本
xmlDoc.Save(xmlPath) '保存XML文件
Else '不符合命名规则
MessageBox.Show("文件名不能包含任何以下字符:" & vbCrLf & "\ / : * ? """" < > |", "警告")
e.CancelEdit = True
End If
End If
End If
End Sub


问题出在这里

If isFileNameRight(e.Label) Then '判断时候符合命名规则
xmlNode.Attributes("Name").Value = e.Label.Trim() '改写XML中的相关节点的属性,并去掉前后的空格
FolderTreeView.SelectedNode.Text = e.Label.Trim() '修改被修改节点显示文本
xmlDoc.Save(xmlPath) '保存XML文件
Else '不符合命名规则
MessageBox.Show("文件名不能包含任何以下字符:" & vbCrLf & "\ / : * ? """" < > |", "警告")
e.CancelEdit = True
End If

TreeView中的相应的节点也应该前后的空格去掉,但是实际运行并没有去掉,不知道是为什么
但是XML中的节点去掉了空格

关于这一段代码

If e.Label = "" Then '判断新的名字是否为空
MessageBox.Show("目录名不能为空", "警告")
e.CancelEdit = True
Else
……

另外,如果文件夹名字是空的,确实会弹出提示框
但是我先选择“重命名”这个选项,然后文件名被选中,此时可以改文件名,但是我不改文件名,直接点回车确认,也会弹出对话框,不知道是为什么


先谢谢了
...全文
194 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zqmillet 2010-08-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 gxingmin 的回复:]

应该在BeforeLabelEdit事件里写吧
[/Quote]先谢谢了

我试过了,效果和After一样
gxingmin 2010-08-19
  • 打赏
  • 举报
回复
应该在BeforeLabelEdit事件里写吧
内容概要:本文系统梳理了国内重点工业物联网平台的四类厂商分类及其核心特点,包括专业独立厂商、工业企业系厂商、互联网大厂系厂商和运营商系厂商,从技术能力、行业Know-How、云生态、网络连接等多个维度进行对比分析,并列出各类型代表企业及其适配场景。同,针对多行业数字化转型、流程工业改造、离散制造、设备远程管理、中小企业起步、高端制造质检、智慧城市接入及工业专网等典型应用场景,提供了明确的选型推荐与依据,帮助用户根据实际需求选择最合适的工业物联网平台。; 适合人群:从事工业物联网规划、数字化转型决策、智能制造系统集成的相关技术人员与企业管理者,以及需要平台选型参考的政府机构或项目实施单位; 使用场景及目标:①为企业在不同行业和场景下选择合适的工业物联网平台提供科学依据;②帮助理解四类厂商的技术优势与局限性,规避选型风险;③指导智能制造、设备联网、云边协同、AI赋能等项目的落地实施; 阅读建议:建议结合自身业务场景对照表格内容进行匹配分析,重点关注平台的协议兼容性、行业适配性、部署灵活性及生态支持能力,综合评估长期可扩展性与技术服务保障。

16,719

社区成员

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

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