大家帮帮忙treeview的问题?
我在treeview是手动添加了根节点aa,bb,cc,dd它们都没有子节点,
就是aa 这样的,但是我想要的是aa()
bb bb()
cc cc()
dd dd()
我有一个表tbinfo里面有两个字段id,tname,这个表是用来存储我要添加的记录,
如:id tname 就是这样的,现在treeview里已经添加好节点了,就是从数据库里查出他们的个数,若数据库里没有
1 aa
2 aa
3 bb
4 cc
就像以上这个表,那么在treeview里就应该是aa(2) 要的就是这样的结果!
bb(1)
cc(1)
dd(0)
[解决办法]
如果你手工绑定aa,然后根据aa来查询它的个数的话,效率会很低,如果你的节点很多的话,加载会很缓慢,因为每个节点都要做一次数据库查询
[解决办法]
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { CreateTreeNode(); } } public void CreateTreeNode() { TreeNode mainNode = new TreeNode(); mainNode.Text = "所有"; IList<string> list = new List<string>(){"aa","bb","cc"}; foreach (string value in list) { string aaCount =GetTable(string.Format(@"select .... where tname='{0}'",value)).Rows[0][0].ToString(); TreeNode node = new TreeNode(); node.Text = value + "(" + aaCount + ")"; mainNode.ChildNodes.Add(node); } TreeView1.ShowLines = true; TreeView1.Nodes.Add(mainNode); } public DataTable GetTable(string str) { //自己实现 }