如何绑定到TreeView?
本帖最后由 davidtsui 于 2013-03-07 09:43:08 编辑
public class Item
{
public int ID {get;set;} //菜单项唯一标号
public int? ParentID {get;set;} // 如果ID为null,则表示是顶级项,否则,则是父级的 ID
public string Text{get;set;} // 菜单项的文本
}
List<Item> items = db.GetItems();//从数据源获取的
如上,求一段代码,递归什么的,把 items 绑定到一个 TreeView。
[解决办法]
http://zhidao.baidu.com/question/411753403.html
建议不要每次都去计算,这样的这个TreeView如果用的地方较多 会很消耗性能。这种固定结构可以生产根据数据生成固定的XML 在读取到程序中缓存起来,每次读缓存。减少每次计算
[解决办法]
winform的treeview?
private void InitTreeView(List<Item> items, int? parentID, TreeNodeCollection Nodes)
{
var itemChilds = items.Where(x => x.ParentID == parentID);
foreach (Item child in itemChilds)
{
TreeNode node = new TreeNode(child.Text);
node.Tag = child.ID; //标记ID
Nodes.Add(node);
InitTreeView(items, child.ID, node.Nodes);
}
}
List<Item> items = db.GetItems();//从数据源获取的
InitTreeView(items, null, treeview1.Nodes); //调用