我只想用TreeView进行层次展示,而不想让用户去点节点,又不想让节点变灰(Enable=false的样子),最好还能支持折叠,请问有办法没?

解决方案 »

  1.   

    那你在SelectedNodeChanged事件中不做任何处理不就得了
      

  2.   

    不是啊,大家理解错了。是压根别让节点像LinkButton或者超链接一样,放上去跟放到普通文字上一样的效果
      

  3.   

    可以看见当鼠标放在节点上的时候浏览器状态栏上面显示javascript:_doPostBack(.................)
    把这个去掉问题应该就解决了,但是应该怎么改这个控件呢??
      

  4.   

    TreeNode.NavigateUrl = "javascript:;";
      

  5.   

    TreeView几个小技巧 http://www.cnblogs.com/Jinglecat/archive/2007/03/19/679313.html
      

  6.   

    还是不行啊,我想让节点根本不允许点,只是纯文本。就像我这样打出来的东西一样不能点,点了页面没有任何回发和变化。
    |
    |--node
    |--node
    |--node
      

  7.   

    TreeNode.SelectAction 属性
    TreeNodeSelectAction.None 
     在选定节点时不引发任何事件。
     
      

  8.   

    没有navigateURL属性怎么可能引发回发呢?
      

  9.   

    Treeview不接受消息[关闭系统级别消息];不抛出,不接受事件.就能实现
      

  10.   

    搞定,静态的如14楼一个个设就行了,动态的如下,经过测试,请给点分分鼓励一下!
        protected void Page_Load(object sender, EventArgs e)
        {
            foreach (TreeNode no in TreeView1.Nodes)
            {
                no.SelectAction = TreeNodeSelectAction.None;
                TreeNodeEnableSelect(no);
            }
              }    public void TreeNodeEnableSelect(TreeNode TN)
        {
            foreach (TreeNode no in TN.ChildNodes)
            {
                no.SelectAction = TreeNodeSelectAction.None;
                TreeNodeEnableSelect(no);
            }    }
      

  11.   

    可是还不是我需要的啊……节点仍然可选,鼠标放到节点上时依然是超链接的样子……通过改节点属性的办法我都试了,貌似都不奏效。我认为得修改控件本身,不知有没有办法。
    再次强调一下:我需求的是treeview在enable=false的样子(大家可以试一试什么样),不可选,就好象纯文本在网页上一样。但是又不想让所有节点变灰……这样字看不见了。所以是既不可选,又能看得见。
      

  12.   

    遍历整个Tree,然后把所有节点的NavigateUrl都设成NavigateUrl="#"
      

  13.   

    node.SelectAction = TreeNodeSelectAction.None;
    这方法不错
    http://blog.csdn.net/ningxi_/archive/2011/05/31/6456041.aspx