c# TreeView 数据递归绑定的算法
来源:互联网 发布:c语言else if成绩判定 编辑:程序博客网 时间:2024/05/22 12:02
最近做项目遇到一个TreeView数据绑定的问题。
问题大概是这样的:一个部门有好多级数,可能以后部门人员还会变动。用Combobx显示当然不合适,所以想到用TreeView显示,那么用TreeView实现数据,有两种选择,有多少级部门就循环多少次;还是就是用递归绑定。显然在不考虑效率的情况下,递归绑定显然更灵活,更合适。
一、代码如下:
//绑定第一级节点
private void bingTreeNode() {
#region
DataTable dtFatherNode;
dtFatherNode = mybumenTableAdapter.getBumenByFaId(0);
if (dtFatherNode.Rows.Count > 0)
{
for (int ShangPinTypeIndex = 0; ShangPinTypeIndex < dtFatherNode.Rows.Count; ShangPinTypeIndex++)
{
TreeNode father = new TreeNode();
string buMenName = dtFatherNode.Rows[ShangPinTypeIndex]["buMenMC"].ToString().Trim();
int ShangPinTypeID = Convert.ToInt32(dtFatherNode.Rows[ShangPinTypeIndex]["buMenId"].ToString().Trim());
father.Text = buMenName;
father.Tag = ShangPinTypeID;
tvBuMen.Nodes.Add(father);
bingSonNode(father);
}
}
#endregion
}
//绑定子节点
private void bingSonNode(TreeNode father)
{
int id = Convert.ToInt32(father.Tag);
DataTable dtBuMen = mybumenTableAdapter.getBumenByFaId(id);
if (dtBuMen.Rows.Count>0)
{
for (int ShangPinTypeIndex = 0; ShangPinTypeIndex < dtBuMen.Rows.Count; ShangPinTypeIndex++)
{
TreeNode nodeson = new TreeNode();
string buMenName = dtBuMen.Rows[ShangPinTypeIndex]["buMenMC"].ToString().Trim();
int myfatherId = Convert.ToInt32(dtBuMen.Rows[ShangPinTypeIndex]["buMenId"].ToString().Trim());
nodeson.Text = buMenName;
nodeson.Tag = myfatherId;
father.Nodes.Add(nodeson);
bingSonNode(nodeson);
}
}
else {
return;
}
}
二、运行效果图:
- c# TreeView 数据递归绑定的算法
- C# 递归的应用 TreeView递归绑定数据
- C# 递归的应用 TreeView递归绑定数据
- C# 递归的应用 TreeView递归绑定数据
- C# 递归的应用 TreeView递归绑定数据
- treeview的数据绑定递归
- TreeView递归绑定数据
- Treeview的递归绑定
- Treeview的递归绑定
- Treeview的递归绑定
- 递归绑定数据到treeview
- TreeView数据绑定的方法(可实现无限递归)
- TreeView树形控件递归绑定数据库里的数据
- TreeView树形控件递归绑定数据库里的数据
- C#动态递归绑定TreeView(WinForm)
- C#递归绑定显示带图标TreeView
- ASP.NET TreeView 递归绑定数据
- TreeView控件递归绑定数据学习
- javaBean简介及基本使用
- oracle10g/11g 新特性五(用Shceduler自动化)
- Go语言使用Scp传输文件
- canvas时钟
- C#实验7 类和继承
- c# TreeView 数据递归绑定的算法
- 各种数据库查询前几条数据的方法
- QScrollArea的setWidget函数会清理前一个pWidget
- HDU 2049 不容易系列之(4)——考新郎(错排)
- VMware虚拟机安装CentOS i386
- B树索引、位图索引和散列索引 知识点
- CSS样式如何控制行间距
- HDU 3518 Boring counting 后缀自动机
- iBATIS教程之like语句的写法浅析