以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 Dot NET,C#,ASP,VB 』  (http://bbs.xml.org.cn/list.asp?boardid=43)
----  来看看asp.net2.0 下的treeview树  (http://bbs.xml.org.cn/dispbbs.asp?boardid=43&rootid=&id=19686)


--  作者:xyin
--  发布时间:6/17/2005 9:10:00 AM

--  来看看asp.net2.0 下的treeview树
[B][B]我不会asp和asp.net这是自个瞎琢磨的,希望能给大家带来一点帮助,请大家斧正
环境:asp.net2.0 windows2000
Visual Web Developer 2005 Express Edition Beta下制作
用的都是最简单的办法,所以效率不是很好,做了一半,修改还没做。
一个是闪的问题没解决,还有重复提交的问题,太深,自己没能懂,希望大家给提提
有个关于正则是的问题:验证只能输入中文数字和字母,开头还不能是数字的正则式那位高手给发一个,谢谢了
treemenu.aspx
%@ Page Language="C#" Debug="true" %>
<% @ Import Namespace="System.IO" %>
<% @ Import Namespace="System.Text" %>
<% @ Import Namespace="System.Xml" %>
<% @ Import Namespace="System.Data" %>
<% @ Import Namespace="System.Xml.XPath" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<script runat="server">
    
     void Page_Load(object sender, EventArgs e)
    {


        

    }

    void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
    {
        if (TreeView1.SelectedNode.ChildNodes.Count != 0)
        {
            Button1.Enabled = true;
            Button2.Enabled = true;
            Button3.Enabled = true;

        }
        if (TreeView1.SelectedNode.ChildNodes.Count == 0)
        {
            string docpath = TreeView1.SelectedNode.ValuePath.ToString();
            string filname = "books.xml";
            docpath = Regex.Replace(docpath, "/", "//");
            XmlDocument doc1 = new XmlDocument();
            doc1.Load(Server.MapPath("./data/" + filname));
            XmlElement selectEle = (XmlElement)doc1.SelectSingleNode(docpath);
            string leftpop = selectEle.InnerText.ToString();
            IFRAME1.Attributes.Add("src", "./data/" + leftpop);
            Button2.Enabled = true;
            Button3.Enabled = true;
            Button1.Enabled = false;
            Label1.Text = leftpop;
            if (leftpop == "")
            {
                Button1.Enabled = true;
            }

        }

        TextBox1.Text = TreeView1.SelectedNode.Text;
        TextBox2.Text = TreeView1.SelectedNode.Text;
    }

    void Button3_Click(object sender, EventArgs e)
    {
        string filname = "books.xml";
        XmlDocument doc1 = new XmlDocument();
        doc1.Load(Server.MapPath("./data/" + filname));
        string docpath = TreeView1.SelectedNode.ValuePath.ToString();
        docpath = Regex.Replace(docpath, "/", "//");
       
        XmlNode chn = (XmlNode)doc1.SelectSingleNode(docpath);
        string leftpop = chn.Name.ToString();
        XmlNode parentN = chn.ParentNode;
        if (leftpop != "福奥通公司")
        {
            parentN.RemoveChild(chn);
            doc1.Save(Server.MapPath("./data/" + filname));
            TreeView1.DataSourceID = "XmlDataSource1";
        }
        Button2.Enabled = false;
        Button1.Enabled = false;
        Button3.Enabled = false;
    }

    void Button1_Click(object sender, EventArgs e)
    {
        string filname = "books.xml";
        XmlDocument doc1 = new XmlDocument();
        doc1.Load(Server.MapPath("./data/" + filname));
        string docpath = TreeView1.SelectedNode.ValuePath.ToString();
        docpath = Regex.Replace(docpath, "/", "//");
        XmlElement selectEle = (XmlElement)doc1.SelectSingleNode(docpath);
        string xuzelei = TreeView1.SelectedNode.Text;
        if (xuzelei!= TextBox1.Text)
       {
           if (TextBox1.Text != "")
           {
            //XmlElement fenleiEle = doc1.CreateElement(TextBox1.Text);
            //selectEle.AppendChild(fenleiEle);
            //doc1.Save(Server.MapPath("./data/" + filname));
            //TreeView1.DataSourceID = "XmlDataSource1";
       
            }
        }
        Button2.Enabled = false;
        Button1.Enabled = false;
        Button3.Enabled = false;
    }

    void Button2_Click(object sender, EventArgs e)
    {
        
        Button1.Enabled = false;
        
    }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TreeView ID="TreeView1" Runat="server" DataSourceID="XmlDataSource1"
            ShowLines="True" OnSelectedNodeChanged="TreeView1_SelectedNodeChanged">
            <SelectedNodeStyle BackColor="Blue"></SelectedNodeStyle>
        </asp:TreeView>
        <asp:XmlDataSource ID="XmlDataSource1" Runat="server" DataFile="~/data/books.xml">
        </asp:XmlDataSource>
        <asp:Label ID="Label1" Runat="server" Text="Label"></asp:Label>
    </div>
    <iframe id="IFRAME1" style="BORDER-RIGHT: 0px solid; BORDER-TOP: 0px solid; Z-INDEX: 103; LEFT: 256px; BORDER-LEFT: 0px solid; WIDTH: 392px; BORDER-BOTTOM: 0px solid; POSITION: absolute; TOP: 0px; HEIGHT: 504px"
    runat="server"></iframe>
        <asp:Button ID="Button3" Runat="server" Text="删除分类" OnClick="Button3_Click" Enabled="False" />&nbsp;<br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        <br />
        <asp:Button ID="Button1" Runat="server" Text="添加分类" OnClick="Button1_Click" Enabled="False" />
        <asp:TextBox ID="TextBox1" Runat="server">在此添加!!</asp:TextBox>&nbsp;&nbsp;<br />
        
        <asp:RegularExpressionValidator id="RegularExpressionValidator1" runat="server" ControlToValidate="TextBox1" ValidationExpression="^[a-zA-Z][a-zA-Z0-9_][\u4e00-\u9fa5]" Display="Static" Font-Size="10pt">
               Zip code must be 5 numeric digits↑↑↑↑
        </asp:RegularExpressionValidator>
        <br />
        <asp:Button ID="Button2" Runat="server" Text="修改分类" OnClick="Button2_Click" Enabled="False" />
        <asp:TextBox ID="TextBox2" Runat="server">在此更改!!</asp:TextBox>&nbsp;<br />
    </form>
</body>
</html>
books.xml
<?xml version="1.0" encoding="utf-8"?>
<福奥通公司>
  <产品>
    <显示器>
      <比克>
        <B1532>
          <B1588 no="1">ceshi</B1588>
          <B15 no="2">ceshi</B15>
        </B1532>
        <B1598>cp1.xml</B1598>
      </比克>
      <AOC>
      </AOC>
    </显示器>
    <刻录盘>
      <明基>
        <B48X>../boxlist1.aspx</B48X>
        <B52X>cp3.xml</B52X>
        <DVD8X>8x</DVD8X>
        <CDRW>rw</CDRW>
      </明基>
    </刻录盘>
    <键盘>
      <明基>
        <color>
          <特色 />
        </color>
        <color />
      </明基>
    </键盘>
    <光驱>
    </光驱>
  </产品>
</福奥通公司>[/B][/B]


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
62.500ms