为了账号安全,请及时绑定邮箱和手机立即绑定

您好,求问关于C# TreeNode的使用,如下所示~

您好,求问关于C# TreeNode的使用,如下所示~

泛舟湖上清波郎朗 2022-01-20 19:15:47
这个控件怎么使用的呢? 看了书的不太理解 ..里面有TreeNode newNode1 = treeView1.Nodes.Add("电话簿"); 然后newNode1.Nodes.Add(sdr[1].ToString());实例化怎么是一个方法.比如下面是从数据库读到TreeNode的代码.是不是说第一个Nodes就是根 然后就是根下面的分支呢?OleDbConnection conn = BaseClass.ConnClass.DataConn();conn.Open();OleDbCommand cmd = new OleDbCommand("select * from tb_tel", conn);OleDbDataReader sdr = cmd.ExecuteReader();TreeNode newNode1 = treeView1.Nodes.Add("电话簿");newNode1.Checked = true;while (sdr.Read()){newNode1.Nodes.Add(sdr[1].ToString());}
查看完整描述

3 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

while (sdr.Read())
{
newNode1.Nodes[0].Nodes.Add(sdr[1].ToString());
}
这样。就是“电话薄”为根。数据库中读取的数据为分支。
你那样“电话薄”和读出来的数据会变成同一级的。

查看完整回答
反对 回复 2022-01-23
?
撒科打诨

TA贡献1934条经验 获得超2个赞

首先更正:TreeNode他不是控件,他是一个对象名(节点对象),treeView1才是控件。
TreeNode newNode1 = treeView1.Nodes.Add("电话簿");
这句话的意思是,定义一个TreeNode 节点类型对象,名称为newNode1 ,并为他赋值,赋值的内容是:treeView1控件的根节点Nodes,因为本来treeView1控件没有根节点,所以应该先添加根节点Nodes.Add("电话簿")根节点显示的内容就是电话簿。
newNode1.Nodes.Add(sdr[1].ToString());
这个意思是,在根节点newNode1处添加子节点,显示内容是sdr[1].ToString()。
Nodes不是根的意思,是“儿子”的意思。treeView1的Nodes,“儿子”可不就是根节点呗!newNode1.Nodes,这个是儿子的儿子,那就是二级节点了。

 


查看完整回答
反对 回复 2022-01-23
?
largeQ

TA贡献2039条经验 获得超8个赞

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class Admin_WareHouseTree : System.Web.UI.Page
{
WMS_Bll.Bll_WareHouses Bll_warehouse = new WMS_Bll.Bll_WareHouses();

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DisplayRoot();
}
}

private void DisplayRoot()
{
DataSet ds_root = new DataSet();
ds_root=Bll_warehouse.GetList("ParentWareHouseID="+0);
if (ds_root.Tables[0].Rows.Count>0)
{
foreach (DataRow dr in ds_root.Tables[0].Rows)
{
TreeNode tn = new TreeNode();
tn.Text =dr["WareHouseID"].ToString()+","+ dr["Description"].ToString();
tn.Value =dr["WareHouseID"].ToString();
tn.Target = "content";
tn.NavigateUrl = "~/Admin/WareHouseMain.aspx?id=" + dr["WareHouseID"].ToString();

this.warehouseTree.Nodes.Add(tn);
DisplayRoot_child(tn);
}

}

}
private void DisplayRoot_child(TreeNode root)
{
DataSet ds_ch = new DataSet();
int parID=Convert.ToInt32(root.Value);
ds_ch = Bll_warehouse.GetList("ParentWareHouseID="+parID);
if (ds_ch.Tables[0].Rows.Count>0)
{
foreach (DataRow dr in ds_ch.Tables[0].Rows)
{
TreeNode tn = new TreeNode();
tn.Text = dr["WareHouseID"].ToString()+","+dr["Description"].ToString();
tn.Value = dr["WareHouseID"].ToString();
tn.Target = "content";
tn.NavigateUrl = "~/Admin/WareHouseMain.aspx?id=" + dr["WareHouseID"].ToString();

root.ChildNodes.Add(tn);

DisplayRoot_child(tn);
//this.warehouseTree.Nodes.Add(tn);
}
}
}
}



查看完整回答
反对 回复 2022-01-23
  • 3 回答
  • 0 关注
  • 380 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号