当前位置导航:炫浪网>>网络学院>>网页制作>>XML/WebService教程

站点导航控件数据动态从数据库加载

1、数据动态从数据库加载


 1using System.Data.OleDb;
 2
 3public partial class Default3 : System.Web.UI.Page
 4{
 5    protected void Page_Load(object sender, EventArgs e)
 6    {
 7        if (!this.IsPostBack)
 8        {
 9            TreeNode newNode = new TreeNode();
10            newNode.Value = "0";
11            newNode.Text = "我的网站";
12            newNode.PopulateOnDemand = true;
13            newNode.SelectAction = TreeNodeSelectAction.Expand;
14            TreeView1.Nodes.Add(newNode);
15        }
16    }
17    protected void TreeView1_TreeNodePopulate(object sender, TreeNodeEventArgs e)
18    {
19        TreeNode newNode;
20        if (e.Node == null)
21        {
22            newNode = new TreeNode();
23            newNode.Value = "0";
24            newNode.Text = "开始站点";
25            newNode.PopulateOnDemand = true;
26            newNode.SelectAction = TreeNodeSelectAction.Expand;
27            TreeView1.Nodes.Add(newNode);
28        }
29        else
30        {
31            string sql = "select * from Data where pid="+e.Node.Value;
32            System.Data.OleDb.OleDbConnection cn = new System.Data.OleDb.OleDbConnection();
33            cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("~/") + @"\App_Data\tree.mdb;Persist Security Info=True";
34            cn.Open();
35            OleDbCommand cmd = new OleDbCommand(sql, cn);
36            OleDbDataReader dr = cmd.ExecuteReader();
37            while (dr.Read())
38            {
39                newNode = new TreeNode();
40                newNode.Text = dr["title"].ToString();
41                newNode.Value = dr["id"].ToString();
42                newNode.NavigateUrl = dr["href"].ToString();
43                newNode.PopulateOnDemand = true;
44                newNode.SelectAction = TreeNodeSelectAction.Expand;
45                e.Node.ChildNodes.Add(newNode);
46            }
47            dr.Close();
48            dr.Dispose();
49            cmd.Dispose();
50            cn.Close();
51            cn.Dispose();
52            cn = null;
53           
54        }
55    }
56}


 
2、SQL动态加载数据,几种触发事件
      1、TreeView 服务器控件的事件
        TreeNodeCheckChange        当TreeView服务器控件的复选框在向服务器的两次发送过程之间有所更改时发生
        SelectedNodeChange           当选择TreeView服务器控件中的节点时发生
        TreeNodeExpanded             当展开TreeView服务器控件中的节点时发生
        TreeNodeCollapsed              当折叠TreeView服务器控件中的节点时发生
        TreeNodePoulate                 当其PopulateOnDemand属性设置为true的节点在TreeView服务器控件中展开时发生reeView
        TreeNOdeDataBound           当数据项绑定到TreeView服务器控件中的节点时发生
      2、节点的选择
         TreeView服务器控件的节点文字有两种模式:选择模式和导航模式,默认情况下,节点的文字处于选择模式
         SelectAction属性来指定单击TreeView服务器控件的节点时所触发的事件
         None                   当选择节点时不触发任何事件
         select                  当选择节点时TreeView服务器控件触发SelectNodeChange事件
         Expand               当选择节点时TreeView服务器控件触发TreeNodeExpanded事件
         selectExpand       当选择节点时TreeView服务器控件同时触发SelectNodeChange和TreeNodeEcpand事件

       
 

using System.Data.SqlClient;
public partial class Default4 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            DataView DView = dv("select * from BCity");
            foreach (DataRowView drv in DView)
            {
                TreeNode tn = new TreeNode();
                tn.Text = drv["CityName"].ToString();
                tn.Value = drv["CityID"].ToString();
                tn.Expanded = false;
                TreeView1.Nodes.Add(tn);
                AddchildNode(tn);
            }
        }
    }

    private void AddchildNode(TreeNode tn)

共2页 首页 上一页 1 2 下一页 尾页 跳转到
相关内容
赞助商链接