SelectExpands="false"
不要让选中的自动扩展呢

解决方案 »

  1.   

    我试过了~~~
    把SelectExpands="false",当点击'+'时显示的内容还是最大一个结点的内容~~因为我设置了treeview的自动刷新的属性.如果不设置的话,点击结点时,右边datagrd的数据就不会更新还有谁知道该怎么编啊~~~
      

  2.   

    我也正在作,现在是tree的参数都传不到DataGrid那边
      

  3.   

    你屏蔽掉expand和collapse引起的回发就行了。具体做法论坛里很多文章都提到的。
      

  4.   

    请问treeview控件哪儿有???
    我怎么没看到那??
      

  5.   

    你可以这样试试.TREEVIEW里只设置NAVIGATEURL和target=xxxFrame,然后就是NAVIGATEURL中传递参数到DATAGRID中就可以了.
      

  6.   

    http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=49682
      

  7.   

    在.aspx页面文件中添加一个隐藏的Button用来产生TreeView的回发事件:  
     
    <INPUT  id="Button1"  style="DISPLAY:none;"  type="button"  value="Button"  name="Button1"  runat="server">  
     
               这个Button必须为Html控件,并将其转为在服务器端运行。  
               style="DISPLAY:none;"该句用来在页面隐藏Button。  
               在Visual.net的设计界面双击该Button产生以下事件:  
               private  void  Button1_ServerClick(object  sender,System.EventArgs  e)  
               {  
                             
               }  
               这里不用添加任何代码,目的是当服务器处理该页面并发送给客户端时产生下面客户端脚本:  
               <script  language="javascript">  
               <!--  
               function  __doPostBack(eventTarget,  eventArgument)  {  
                           var  theform  =  document.Form1;  
                           theform.__EVENTTARGET.value  =  eventTarget;  
                           theform.__EVENTARGUMENT.value  =  eventArgument;  
                           theform.submit();  
               }  
               //  -->  
               </script>  
      

  8.   

    咋能得到treeview呢?
    8会用
      

  9.   

    我去试试看~~这个问题困扰我好几天了~~~
    今天终于可以尝试着解决一下了~~^_^treeview控件去www.asp.net下载
      

  10.   

    从微软那ie web control下载下来,把treeview的源码拿来任你改:)
      

  11.   

    很遗憾~~`你们的方法都没有实现我的要求~~~~ hgknight(江雨.net)说的网地,我去看了~还把上面的代码copy下来研究了一下~~~他用的是C#编的~~~我把他译为VB.net输入,老是出错(错误有好几处~~~~)javascript我也不是很熟悉~~~~ goody9807()说的方法,我把他写进去后,根本没起作用~~我当时就晕了~~~~也不知道上面你们说的代码都试过没有~~~~~到底能不能实现~~~你们还有没有更好的方法~~~最好不要带有javascript脚本就能实现的~~~最好是VB.net写的,谢了~~~~我真的很需要~~~
      

  12.   

    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
            'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
            '不要使用代码编辑器修改它。
            InitializeComponent()
            TreeView1.Attributes("OnClick") = "javascript:  window.setTimeout _('__doPostBack(\'TreeView1\',\'\')',  0,  'JavaScript')"    End Sub
    在你的aspx页面加一按钮,双击按钮.现在你试试,展开,收拢都不会有回发了.
    这个方法我们正用,肯定能解决你的问题.
      

  13.   

    我做過很多有關treeview的,從來沒碰到像你說的那樣,你把原碼貼出來看看,最好詳細點。
      

  14.   

    好~~~我试试winner008(飞天狗狗) 的方法~~~~~代码只有明天贴出来了~~~公司简陋,不能上网,只有回家才可以上传了~~~
      

  15.   

    今天我试过winner008(飞天狗狗) 的代码了~~,出现了以下的错误:系统弹出的报错对话框内容如下:"出现了运行时间错误.
     是否要进行调试?
     行:75 
     错误:缺少';'"
     
     这个缺少';'的行有很多~~~~~,我对javascript不是很熟悉,所以也不知道该在那里修改~~~~我都是按你的代码复制过去的:
    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
            'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
            '不要使用代码编辑器修改它。
            InitializeComponent()
            TreeView1.Attributes("OnClick") = "javascript:  window.setTimeout _('__doPostBack(\'TreeView1\',\'\')',  0,  'JavaScript')"End Sub你说的添加按钮我也加了:
    <INPUT  id="Button1"  style="DISPLAY:none;"  type="button"  value="Button"  name="Button1"  runat="server">  
    我也双击了:
      Private Sub Button1_ServerClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ServerClick
      End Sub我用treeview的expand和collapse事件中实现了要求,不过每次扩展和收缩时页面要刷新(页面抖动很大~~~)代码如下:
     '当树结点扩展时
        Private Sub TreeView1_Expand(ByVal sender As Object, ByVal e As Microsoft.Web.UI.WebControls.TreeViewClickEventArgs) Handles TreeView1.Expand
            Dim nodestring As String     '当前所选择的节点索引
            ximing = TreeView1.SelectedNodeIndex         
            jysmcindex = TreeView1.SelectedNodeIndex
            nodestring = TreeView1.SelectedNodeIndex
            '判断选取的目录
            Select Case nodestring.Length
                Case 1    '院
                    view_total(college_total())
                    view_all(college_all())
                    btnall.Visible = False
                    btnyj.Visible = False
                    btnwj.Visible = False
                    btncj.Visible = False
                    dgall.Visible = True
                    dgstaffroom.Visible = False
                    lblall.Text = "详细信息:"
                Case 3    '系
                    view_total(department_total(ximing))
                    view_all(department_all(ximing))
                    btnall.Visible = False
                    btnyj.Visible = False
                    btnwj.Visible = False
                    btncj.Visible = False
                    dgall.Visible = True
                    dgstaffroom.Visible = False
                    lblall.Text = "详细信息:"
                Case 5    '教研室
                    view_total(staffroom_total(jysmcindex))
                    view_staffroom_all(staffroom_all(jysmcindex))
                    btnall.Visible = True
                    btnyj.Visible = True
                    btnwj.Visible = True
                    btncj.Visible = True
                    dgall.Visible = False
                    dgstaffroom.Visible = True
                    lblall.Text = "详细信息:(应交)"
            End Select
        End Sub    '当树节点闭合时
        Private Sub TreeView1_Collapse(ByVal sender As Object, ByVal e As Microsoft.Web.UI.WebControls.TreeViewClickEventArgs) Handles TreeView1.Collapse
            Dim nodestring As String   '当前所选择的节点索引
            ximing = TreeView1.SelectedNodeIndex
            jysmcindex = TreeView1.SelectedNodeIndex
            nodestring = TreeView1.SelectedNodeIndex
            '判断选取的目录
            Select Case nodestring.Length
                Case 1    '院
                    view_total(college_total())
                    view_all(college_all())
                    btnall.Visible = False
                    btnyj.Visible = False
                    btnwj.Visible = False
                    btncj.Visible = False
                    dgall.Visible = True
                    dgstaffroom.Visible = False
                    lblall.Text = "详细信息:"
                Case 3    '系
                    view_total(department_total(ximing))
                    view_all(department_all(ximing))
                    btnall.Visible = False
                    btnyj.Visible = False
                    btnwj.Visible = False
                    btncj.Visible = False
                    dgall.Visible = True
                    dgstaffroom.Visible = False
                    lblall.Text = "详细信息:"
                Case 5    '教研室
                    view_total(staffroom_total(jysmcindex))
                    view_staffroom_all(staffroom_all(jysmcindex))
                    btnall.Visible = True
                    btnyj.Visible = True
                    btnwj.Visible = True
                    btncj.Visible = True
                    dgall.Visible = False
                    dgstaffroom.Visible = True
                    lblall.Text = "详细信息:(应交)"
            End Select
        End Sub不过我还是很想知道你说的方法该怎么实现的(扩展和收缩时不用刷新)~~~~你能看看系统报的错误是错在那里吗?
      

  16.   

    TreeView1.Attributes("OnClick") = _
    "javascript:  window.setTimeout('__doPostBack(\'TreeView1\',\'\')',  0,  'JavaScript')"你copy这段试试,应该不会错了.
      

  17.   

    就是在javascript前面多了一个‘_’,就有这么大的不同啊~~~^_^我在试试看~~不过又要到明天才能有结果了~~不过还是很感谢你`~
      

  18.   

    winner008(飞天狗狗) 的代码
    TreeView1.Attributes("OnClick") = _
    "javascript:  window.setTimeout('__doPostBack(\'TreeView1\',\'\')',  0,  'JavaScript')"我试了一下~~~基本上和我昨天实现的差不多~~不过还是有个问题:比如顶级节点是A,A下面有三个子节点B,C,D;B,C,D下面各有子节点
    1.我先扩展了B节点后,点击了其中一个子节点B2,右边的datagrid就显示B2节点的内容
    2.我再收缩B节点,右边的datagrid就显示B节点的内容
    3.我又扩展C节点(但没点击C节点),右边的datagrid本来应该还是显示B节点的内容,但是显示的却是A节点的内容
    4.我又收缩C节点,同样还是显示的A节点内容
    除了这个问题外,我觉得添加了你的代码后,每次扩展和收缩依然要刷新~~~每次刷新页面抖动都很大~~~