做个记录,省得以后用到的时候都得再找以前写的代码,而且发现以前写的代码还有点错误的,但层级达到3层以上的时候就看得出错误在哪了,下面是更正后的代码:
// 绑定行政区域下拉列表
private void BindAreaDDL()
{
ddl行政区域.Items.Clear();
ddl行政区域.Items.Insert(0, new ListItem("", "0"));
DataSet ds = new S_Area2DAO().GetList("");
if (ds.Tables.Count > 0)
{
var query1 = ds.Tables[0].AsEnumerable().Where(x => x["parentid"].ToString() == "0");
foreach (var item in query1)
{
ListItem li = new ListItem(item["name"].ToString(), item["id"].ToString());
ddl行政区域.Items.Add(li);
int index = 1;
AddChildListItem(ds, item["id"].ToString(), index);
}
}
}
// 递归添加子项
private void AddChildListItem(DataSet ds, string pid, int index)
{
int tmp = index; // 保存层级
// 计算前面的空白
string space_str = "";
for (int i = 0; i < index; i++)
{
space_str += "...";
}
var query1 = ds.Tables[0].AsEnumerable().Where(x => x["parentid"].ToString() == pid);
foreach (var item in query1)
{
ListItem li = new ListItem(space_str + item["name"].ToString(), item["id"].ToString());
ddl行政区域.Items.Add(li);
index++;
AddChildListItem(ds, item["id"].ToString(), index);
index = tmp; // 还原层级
}
}
分享到:
相关推荐
在ASP.NET开发中,DropDownList控件经常被用于创建用户友好的交互界面,尤其是在需要用户从一系列选项中选择一个的情况。本教程将详细介绍如何利用DropDownList实现无限级分类的多级下拉效果。 首先,我们需要理解...
本教程将详细介绍如何利用asp.net和SQL Server 2000实现递归绑定树形控件。 首先,我们需要理解递归的概念。递归是一种编程技巧,函数或方法调用自身以解决复杂问题。在树形控件的上下文中,递归通常用于遍历具有...
在ASP.NET页面中,你可能需要将这个递归函数的结果绑定到TreeView控件: ```aspx <asp:TreeView ID="tvNavigation" runat="server" ShowCheckBoxes="True" OnNodeDataBound="tvNavigation_NodeDataBound"> </asp:...
在ASP.NET中实现递归生成树,通常涉及到以下关键概念和技术: 1. 数据模型:首先,你需要一个数据模型来存储层级数据。这个模型通常包含一个ID字段(标识当前节点)、一个父ID字段(指向父节点)以及其他相关信息。...
在.NET编程环境中,递归算法是一种强大的工具,它允许函数或方法调用自身来解决复杂问题。递归的核心思想是将大问题分解为相同或相似的小问题,直到问题变得足够简单,可以直接得出答案。这种解决问题的方式在数据...
ASP.NET递归运算是一种在编程中解决复杂问题的策略,它涉及到函数或方法调用自身来解决问题。在ASP.NET框架中,递归可以用于处理树形结构数据、遍历文件系统、实现算法(如Fibonacci序列)等多种场景。本案例提供了...
在给定的标题“ASP.net 递归读出网站上所有目录文件(源)”中,主要涉及到的技术点是使用递归算法来遍历并读取网站目录下的所有文件。下面我们将详细探讨这一主题。 递归是一种解决问题的方法,它将问题分解为更小的...
//查询一张表 返回dataset 类型 (陆续推出其他类型绑定 //注意: 数据表格式必须是 递归类型 //比如: //ID Pid Name //1 0 a //2 0 b //3 0 c //4 0 d //5 1 e //id为5的 是ID为1的子类... //6 1 f //同上 ...
在这个"ASP.NET-Treeview-递归生成部门树"的示例中,我们将探讨如何利用TreeView控件结合递归算法来构建一个表示部门结构的树形视图。 首先,我们要理解TreeView的基本概念。TreeView控件是一个可视化组件,它能够...
在ASP.NET开发中,母版页(Master Page)是一种强大的布局工具,允许开发者创建一致的网站外观和用户体验。母版页定义了整个站点共享的通用布局,而内容页(Content Page)则可以插入到母版页中,填充个性化的内容。...
在ASP.NET开发中,"三级联动控件"通常指的是在一个网页表单中,有三个下拉列表(或者称为选择框)分别表示省、市、区/县,它们之间存在依赖关系。当用户在第一个下拉列表(如省)中选择一个选项时,第二个下拉列表...
1. **递归函数的构造**:在.NET中,递归函数通常包含两个部分:基本情况(base case)和递归情况(recursive case)。基本情况是问题最简单的情况,可以直接返回结果;递归情况则是将问题分解并调用自身来处理更小的...
根据给定文件的信息,我们可以提炼出以下几个主要的知识点:不重复顺序递归的概念与实现、递归算法的应用、几种常见的Web开发技术(包括.NET、PHP、ASP.NET)以及排序算法的基本概念。 ### 不重复顺序递归 #### ...
asp.net 对文件进行操作if (Directory.Exists(dir)) //如果存在这个文件夹删除之 { foreach (string d in Directory.GetFileSystemEntries(dir)) { if (File.Exists(d)) File.Delete(d); //直接删除其中的文件...
ASP.NET 页面控件遍历是开发ASP.NET Web应用程序时的一项重要技能,特别是在处理动态生成的控件或需要遍历所有控件以实现某些功能(如数据验证、事件处理或动态设置属性)时。非嵌套母版页的情况指的是在没有使用...
在ASP.NET开发中,我们经常需要展示层次结构的数据,如组织结构、目录树等,这时候树形控件(TreeView)就显得尤为重要。本教程将详细讲解如何在ASP.NET中直接绑定标准SQL数据库数据表,创建一个三级树结构。 首先...
Asp.net手动绑定数据(分页、编辑、删除、加控件等操作) Asp.net中My97DatePicker4.2日期的使用 Asp.net中DataList控件添加删除 Asp.net获取请求的用户信息IP地址 获取世界IP地址库显所在城市信息 MySQL...
在ASP.NET(C#)开发中,Tree控件是一种常见的用户界面元素,用于展示层次结构的数据。它常被用于网站导航、文件系统浏览或者组织复杂的分类信息。本篇将深入探讨如何在C#环境下动态地绑定数据到ASP.NET的Tree控件。 ...
在 ASP.NET 中,我们可以使用 TreeView 控件来展示文件夹和文件的结构。TreeView 控件可以以树形结构展示文件夹和文件的关系,方便用户浏览和下载文件。 二、递归遍历文件夹和文件 为了将文件夹和文件存入 ...
这里我们关注的是使用jQuery控件配合后台.NET代码来递归构造树形结构。递归是一种强大的编程技术,它允许函数或方法调用自身来解决复杂问题,特别适合处理具有层次结构的数据。 首先,我们要理解.NET中的递归实现。...