因为需要至少是IE5。5来支持它,所以最好还是用IE6。0

解决方案 »

  1.   

    在IE6。0下不能正常显示结点。也就是说没有层次。所有的级别全在一行也就是这样如图:
    777777778888888888
    999999991111111111
    (1)
    而正确的应是。
    +7
     +..8
      +..9
       +..1
    (2)
    但是在“IE6。0以下的版本”却能正常的显示。我试过如果在W2000下用IE5。0也能正常显示。
    难道是微软做错了吗。我用的是微软网站上下载的树形控件。
      

  2.   

    我会,但你要什么?
    我给你一个查找的例子
    #region 利用递归查找TreeView下的指定名称的第一个结点并选中它。
    /// <summary>
    /// 在Web页面查找TreeView下的指定名称的第一个结点并选中它。
    /// 需要一个全局的bool型变量来标识在递归时是否已经找到,以便退出递归,
    /// 本例中用的是:bl。
    /// </summary>
    /// <param name="node">开始查找的结点</param>
    /// <param name="name">要查找的结点名称</param>
    /// <param name="flag">是否用首字母模糊查询</param>
    /// <returns>找到了就返回true,否则返回false</returns>
    private bool FindNode(Microsoft.Web.UI.WebControls.TreeNode node,string name,bool flag)
    {
    bool fl;
    fl=false;
    if (node.Nodes.Count>0)   //有子结点;
    {
    expand(node);
    for (int i=0;i<node.Nodes.Count;i++)
    {
    if (bl) return true;  //这句是关键 FindNode(node.Nodes[i],name,flag); if (flag)  //首字母模糊查询
    fl=node.Nodes[i].Text.ToUpper().StartsWith(name.ToUpper());
    else
    fl=(node.Nodes[i].Text.ToUpper()==name.ToUpper()); if (fl)
    {
    string index1=node.Nodes[i].GetNodeIndex();//取得index
    TreeView1.SelectedNodeIndex=index1;
    bl=true;
    }
    }
    }
    else    //没有子结点
    { if (flag) //首字母模糊查询
    fl=node.Text.ToUpper().StartsWith(name.ToUpper());
    else
    fl=(node.Text.ToUpper()==name.ToUpper()); if (fl)
    {
    string index1=node.GetNodeIndex();//取得index
    TreeView1.SelectedNodeIndex=index1;
    bl=true;
    } }
    return false;
    }
    #endregion
      

  3.   

    试一下这个。
    http://msdn.microsoft.com/downloads/samples/internet/ASP_DOT_NET_ServerControls/WebControls/default.asp安装方法:
    1.bulid.将bulid.bat的路径指向csc.exe所在路径,生成Microsoft.Web.UI.WebControls.dll。
    2.在wwwroot下创建空目录webctrl_client\1_0。
    3.将build\Runtime下的文件拷至webctrl_client\1_0下。
    4.选择工具箱的自定义工具箱,添加Microsoft.Web.UI.WebControls.dll。