我有一个奇怪的问题.我们来看看那段代码:
TreeNode tn = TreeView1.FindNode("2009/08/12 (1)"); //OK, the Node is found
Run Code Online (Sandbox Code Playgroud)
现在,我需要删除该节点:
(它不工作!)
(例如(我知道我不需要使用TreeView1.FindNode()方法,但是i = -1))
TreeNode tn1 = TreeView1.FindNode(tn.ValuePath);
int i = TreeView1.Nodes.IndexOf(tn1);
Run Code Online (Sandbox Code Playgroud)
要么
TreeView1.Nodes.Remove(tn);
Run Code Online (Sandbox Code Playgroud)
问题是,上面的代码不起作用,我的意思是,节点没有删除,为什么?TreeView看起来像这样:
alt text http://img130.imageshack.us/img130/230/71970321.png
小智 8
似乎.net中的TreeView控件只允许删除第一级节点,因此如果您尝试删除的节点不是这种节点,则需要通过其父节点将其删除,使用如下所示:
Dim Padre As TreeNode = TreeView1.SelectedNode.Parent
If (Padre Is Nothing) Then
TreeView1.Nodes.Remove(TreeView1.SelectedNode)
Else
Padre.ChildNodes.Remove(TreeView1.SelectedNode)
End If
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你!
| 归档时间: |
|
| 查看次数: |
2980 次 |
| 最近记录: |