表数据:
| id | text | Value | NavigateUrl | Target | TreeNodeOrder |
|---|
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
TreeView1.Nodes.Clear(); //清空TreeView1的所有节点
SqlConnection mcon = new SqlConnection("Data source=.;initial catalog=mywebsite;user id=sa);
mcon.Open();
DataSet ds = new DataSet();
SqlDataAdapter mydA = new SqlDataAdapter("select * from treeview1 order by TreeNodeOrder", mcon);
mydA.Fill(ds, "DataTable0");
mcon.Close();
DataTable dtm = ds.Tables["DataTable0"]; //用dtm比ds.Tables["DataTable0"]写起来简便
if (dtm != null && dtm.Rows.Count > 0)
{
for (int i = 0; i <= dtm.Rows.Count - 1; i++)
{
TreeNode node = new TreeNode();//创建节点
//设置节点属性
node.Text = dtm.Rows[i]["text"].ToString();
node.Value = dtm.Rows[i]["text"].ToString();
node.NavigateUrl = dtm.Rows[i]["NavigateUrl"].ToString();
node.Target = dtm.Rows[i]["Target"].ToString();
node.Expanded = false;//设定节点是否展开
TreeView1.Nodes.Add(node);//将新建的一级节点添加到TreeView1
}
}
}
}
使用C#填充TreeView控件
这段代码展示了如何在ASP.NET中使用C#从数据库读取数据并填充TreeView控件。它首先清空TreeView,然后打开数据库连接,通过SqlDataAdapter获取数据,并逐行设置节点的属性,包括文本、值、导航URL、目标和展开状态。最后,将节点添加到TreeView中。
1652





