1

我有一个作为树视图的菜单,我想做的是使用户选择的任何树节点都不能再次选择,除非他转到不同的页面。我将如何在 asp.net 和 vb 中执行此操作?

更新:

好的,到目前为止,这就是我在树节点选择中所做的更改子

   ViewState(10) = TreeView1.SelectedNode

    TreeView1.SelectedNode.SelectAction = TreeNodeSelectAction.None

    If ViewState(10).valuepath <> TreeView1.SelectedNode.ValuePath Then
        TreeView1.SelectedNode.SelectAction = TreeNodeSelectAction.Select
    End If

我确信那里的专家确切地知道为什么这不起作用,尽管我很惊讶它遵守了。无论如何,这给了我一个错误,尽管我想不出另一种方法来保留该选定节点

更新:

  ViewState(10) = TreeView1.SelectedNode.DataItem

    If ViewState(10) <> TreeView1.SelectedNode.DataItem Then
        TreeView1.SelectedNode.Selected = ViewState(10)
        TreeView1.SelectedNode.SelectAction = TreeNodeSelectAction.Select
    Else
        TreeView1.SelectedNode.SelectAction = TreeNodeSelectAction.None
    End If

这适用于 selectaction.none 这正是我想要的,但是当用户选择另一个树节点时我无法再次启用它。

4

1 回答 1

2

这是将来需要此功能的任何人的答案

For Each n As TreeNode In TreeView1.Nodes
        For Each a As TreeNode In n.ChildNodes
            If a.Selected = True Then
                a.SelectAction = TreeNodeSelectAction.None
            Else
                a.SelectAction = TreeNodeSelectAction.Select
            End If
        Next
    Next
于 2012-12-10T23:19:31.153 回答