/// <summary>
/// 绑定下拉框
/// </summary>
/// <param name="ddl">绑定控件名称</param>
/// <param name="dt">绑定的数据源</param>
/// <param name="categoryid">父级id值</param>
/// <param name="layer">缩进种子</param>
/// <param name="parentId">父级ID列名</param>
/// <param name="name">需要显示text列名</param>
/// <param name="id">需要绑定value的列名</param>
private void BindChannelType(DropDownList ddl, DataTable dt, string categoryid, int layer, string parentId, string name, string id)
{
DataView dv = new DataView(dt);
dv.RowFilter = parentId + "='" + categoryid + "'";
//过滤
if (categoryid != "")
{
layer++;
//默认为第一层
}
foreach (DataRowView drv in dv)
{
string span = "";
if (categoryid != "")
{
for (int i = ; i < layer; i++)
//父级菜单不缩进
{
span += " ";
} }
ListItem li = new ListItem();
li.Text = span + drv[name].ToString();
li.Value = drv[id].ToString();
ddl.Items.Add(li);
BindChannelType(ddl, dt, drv[id].ToString(), layer, parentId, name, id);
}
}

DropDownList 递归绑定分子公司信息的更多相关文章

  1. TreeView树形控件递归绑定数据库里的数据

    TreeView树形控件递归绑定数据库里的数据. 第一种:性能不好 第一步:数据库中查出来的表,字段名分别为UNAME(显示名称),DID(关联数据),UTYPE(类型) 第二步:前台代码 <% ...

  2. TreeView递归绑定无限分类数据

    TreeView递归绑定无限分类数据 实现一个动态绑定,无限级分类数据时,需要将数据绑定到TreeView控件,分类表的结构是这样的: 字段 类型 Id int ParentId int Name N ...

  3. Python递归_打印节点信息

    Python递归_打印节点信息 递归特性:1.必须由一个明确的结束条件2.每次进入更深一层递归时,问题规模相比上一次递归都应该有所减少3.递归效率不高,递归层次过多会导致栈溢出(在计算机中,函数调用时 ...

  4. WPF 组织机构下拉树多选,递归绑定方式现实

    使用HierarchicalDataTemplate递归绑定现实 XAML代码: <UserControl x:Class="SunCreate.CombatPlatform.Clie ...

  5. DropDownList 不能绑定多个值错误!

    ListItem item = new ListItem("--请选择--",""); ddlstPurchaser.Items.Insert(0, item) ...

  6. 潜移默化学会WPF(难点控件treeview)--改造TreeView(CheckBox多选择版本),递归绑定数据

    原文:潜移默化学会WPF(难点控件treeview)--改造TreeView(CheckBox多选择版本),递归绑定数据 目前自己对treeview的感慨很多 今天先讲 面对这种 表结构的数据 的其中 ...

  7. [工作札记]02: .Net Winform控件TreeView最简递归绑定方法

    前言:Treeview控件是我们在WinForm.WebForm开发中经常使用的控件,需要从数据库动态加载数据,然后递归绑定每一个节点:同样,递归的思路在其他程序中也经常运用,包括.Net MVC等. ...

  8. 进程的处理器亲和性和 vCPU 的绑定(查看cpu信息,超线程等)

    通常情况下,在 SMP 系统中,Linux 内核的进程调度器根据自有的调度策略将系统中的一个进程调度到某个 CPU 上执行.一个进程在前一个执行时间是在 cpuM(M 为系统中的某 CPU 的 ID) ...

  9. dropdownlist同时绑定数据库和自定义内容

    在有些时候,我们需要dropdownlist里面包含“全部”这个字段,但是数据库中不存在“全部”,只存在具体的分类项. 这种情况下就需要先把数据库的数据源绑定到dropdownlist中,然后再在后面 ...

随机推荐

  1. MySQL系列:innodb源代码分析之内存管理

    在innodb中实现了自己的内存池系统和内存堆分配系统,在innodb的内存管理系统中,大致分为三个部分:基础的内存块分配管理.内存伙伴分配器和内存堆分配器.innodb定义和实现内存池的主要目的是提 ...

  2. Android关于Task的一些实践之SingleTask, SingleInstance和TaskAffinity

    上一篇文章粗略地介绍了一下关于Android中Task的基本知识.只是实践才是检验真理的唯一标准,所以.今天就来试验一下Task中的launchMode是否真的实现了文档所说的那样. 首先.定义三个A ...

  3. 编程算法 - 最小的k个数 代码(C)

    最小的k个数 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 输入n个整数, 找出当中的最小k个数. 使用高速排序(Quick Sort)的方法 ...

  4. CGlib小记

    CGlib是一个强大的代码生成包.常被用于各种AOP框架,提供"拦截"功能. JDK本身就为控制要訪问的对象提供了一 种途径,动态代理Proxy. 可是被代理的累必须实现一个或多个 ...

  5. C# WINFORM 窗体执行ORACLE存储过程 进行增删改查 自己编写借助网络(二)

    窗体界面: 下面是项目二的代码 本代码我是留着备份学习的 以供参考: 存储过程: 存储过程: 插入数据:CREATE OR REPLACE Procedure p_insert_t_cls --存储过 ...

  6. 远程报错:这可能是由于credssp加密oracle修正

  7. oracle从子表取出前几行数据:

    取排序后的前几行,应该用: select * from(select * from test order by stamp desc) where rownum<= 6  (表示排序后取前几行) ...

  8. 如何快速删除Linux下的svn隐藏文件及其他临时文件 (转载)

    转自:http://blog.csdn.net/edsam49/article/details/5840489 在Linux下,你的代码工程如果是用svn进行管理的,要删除Linux kernel里的 ...

  9. bzoj 1603: [Usaco2008 Oct]打谷机【瞎搞】

    一棵树,碰到改变转向的边就异或一下,从1dfs一遍 #include<iostream> #include<cstdio> using namespace std; const ...

  10. HTML文档中class的命名规则以及命名规范

    1.采用英文字母.数字以及“-”和“_”命名. 2.以小写字母开头,不能以数字和“-”.“_”开头. 3.命名形式:单字,连字符,下划线和驼峰. 4.使用有意义命名. 其中(3).(4)条规定主要是便 ...