根据TreeView的结点数据的ID号,返回该结点的深度
来源:互联网 发布:starcam网络摄像机 编辑:程序博客网 时间:2024/05/21 10:42
通过递归的方式实现,函数代码如下:
/// <summary>
/// 根据指定目录ID号,获得该目录的层级,
/// </summary>
/// <param name="curID">指定目录ID号</param>
/// <param name="dt">datatable</param>
/// <param name="ai_level">计算层级,以0开始</param>
public void GetNodesLevel(string curID,DataTable dt,ref int ai_level)
{
string curparentid = "", curIDnew = "";
DataView dv = dt.DefaultView;
dv.RowFilter = "ID = " + System.Convert.ToDecimal(curID) + "";
dv.RowStateFilter = DataViewRowState.OriginalRows;
if (dv.Count > 0)
{
curparentid = dv[0]["PARENTID"].ToString().Trim();
dv.RowFilter = "ID = " + System.Convert.ToDecimal(curparentid) + "";
dv.RowStateFilter = DataViewRowState.OriginalRows;
if (dv.Count > 0)
{
curIDnew = dv[0]["ID"].ToString().Trim();
ai_level++;
GetNodesLevel(curIDnew, dt, ref ai_level);
}
}
}
在aspx.cs中如下:
int li_i = 0;
GetNodesLevel("2", ds.Tables[0], ref li_i);
ClientScript.RegisterClientScriptBlock(this.GetType(), "", "<script>alert('"+li_i.ToString()+"')</script>");
- 根据TreeView的结点数据的ID号,返回该结点的深度
- SAX解析XML实例——根据结点属性查找该结点包含的信息
- TreeView加载结点及结点的删除、内容编辑
- 返回环路的开头结点
- 递归访问TreeView的所有结点
- TreeView控件中结点的自动生成
- 如何判断TreeView中结点的层次
- Linq写的Treeview递归生成结点
- 实现TreeView结点拖拽的实例
- treeview展开指定层的结点
- jquery.treeview的结点编辑方法
- treeview展开指定层的结点
- 递归的遍历TreeView中的所有结点
- javafx treeview 获取选中的结点
- 题目:输入一个链表的头结点,反转该链表,并返回反转后链表的头结点。
- 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。
- 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。
- Linq To XML:获得该结点的所有祖先结点,也可以说父结点吧
- 设计模式(三):Factory Method模式
- vc小技巧
- 寻正则表达式:匹配控制字符
- vc Resource栏“this file is already open in the editor”问题及dlg类不见的解决
- 我该怎么办?
- 根据TreeView的结点数据的ID号,返回该结点的深度
- 月光宝盒第二期
- Attributes
- 通过CMWAP下载大文件一种实现方法
- 心情日记——20071109
- 中位数问题分析
- 设计模式(四):Abstract Factory模式
- 使用Vs.Net 的一些小技巧
- 爱的色放在线观看