[C#] B/S C/S 运用递归 动态绑定树

今天无意当中翻到了 以前用VS2005 开发的 B/S 动态绑定树的例子..
还是自己的 笔记好.一下子 就看懂了..马上又开发了一个 C/S 结构的供大家参考..
前面发过 2 篇关于树的例子.. 资源管理器还不错.. 另外一篇就差了..
但是对 初学者来说 非常好 理解..

另外 B/S 树会刷新..C/S 树也会刷新...为了不让它刷新..添加, 修改.删除 节点的时候..树和 数据库是独立的..,
就是 不用先操作 数据库,然后重新绑定..
2者独立操作. 运用Beg inUpdate() he EdnUpdate() 防止树刷新...

递归绑定树
这种 方法适合 一个表总的某一列引用自己的主键的情况..
C/S:
//创建根节点
    public void BindCategoryTreeVew(TreeView treeView, bool isExpanded, string sSelectedData)
    {
        //将 获取的数据转换为 一个DataTable
        DataTable dt=GetCategorys().Tables[0];
        treeView.Nodes.Clear();//清空 树的所有节点
        //获取与排序顺序中的筛选器以及指定的状态相匹配的所有System.Data.DataRow 数组
        DataRow []rowlist=dt.Select("ParentID='-1'");
        if (rowlist.Length <= 0) return;
        //创建跟节点
        TreeNode rootNode = new TreeNode();
        //设置根节点的属性
        rootNode.Text = rowlist[0]["Desn"].ToString();
        //设置根节点的值
        rootNode.Text = rowlist[0]["CategoryID"].ToString();
        rootNode.Expanded = isExpanded;
        rootNode.Selected = true;
        //添加跟节点
        CategoryView.Nodes.Add(rootNode);
        CreateChildNode(rootNode, dt, isExpanded, sSelectedData);

     }
    private void CreateChildNode(TreeNode parentNode, DataTable dt, bool isExpanded, string sSelecedData)
    {
        //选择数据,添加排序表达市
        DataRow [] rowList = dt.Select("ParentID=" + Convert.ToInt32(parentNode.Value));
        foreach (DataRow row in rowList)
        {
            //创建一个新的节点了
            TreeNode node = new TreeNode();
            node.Text = row["Desn"].ToString();
            node.Value = row["CategoryID"].ToString();
            node.Expanded = isExpanded;
            if (node.Value == sSelecedData)
            {
                node.Selected = true;
            }
            parentNode.ChildNodes.Add(node);
            //递归调用,创建其他节点
            CreateChildNode(node,dt,isExpanded,sSelecedData);
        }
    }
B/S:
  //创建根节点
    public void BindCategoryTreeVew(TreeView treeView, bool isExpanded, string sSelectedData)
    {
        //将获取的数据转换为 一个DataTable
        DataTable dt=GetCategorys().Tables[0];
        treeView.Nodes.Clear();//清空 树的所有节点
        //获取与排序顺序中的筛选器以及指定的状态相匹配的所有System.Data.DataRow 数组
        DataRow []rowlist=dt.Select("ParentID='-1'");
        if (rowlist.Length <= 0) return;
        //创建跟节点
        TreeNode rootNode = new TreeNode();
        //设置根节点的属性
        rootNode.Text = rowlist[0]["Desn"].ToString();
        //设置根节点的值
        rootNode.value = rowlist[0]["CategoryID"].ToString();
        rootNode.Expanded = isExpanded;
        rootNode.Selected = true;
        //添加跟节点
        CategoryView.Nodes.Add(rootNode);
        CreateChildNode(rootNode, dt, isExpanded, sSelectedData);

     }
    private void CreateChildNode(TreeNode parentNode, DataTable dt, bool isExpanded, string sSelecedData)
    {
        //选择数据,添加排序表达市
        DataRow [] rowList = dt.Select("ParentID=" + Convert.ToInt32(parentNode.Value));
        foreach (DataRow row in rowList)
        {
            //创建一个新的节点了
            TreeNode node = new TreeNode();
            node.Text = row["Desn"].ToString();
            node.Value = row["CategoryID"].ToString();
            node.Expanded = isExpanded;
            if (node.Value == sSelecedData)
            {
                node.Selected = true;
            }
            parentNode.ChildNodes.Add(node);
            //递归调用,创建其他节点
            CreateChildNode(node,dt,isExpanded,sSelecedData);
        }
    }

功能描述: 1.业务流程更加合理、系统化 将业务流程按照部门管理职能进行划分,突破了单部门信息化处理的模式,着眼于将整个企业集 团范围内的业务流程控制更加系统化、合理化,企业运作效率因而得到最大限度的提高。 2.部门管理更具严密性、有序性 以组织机构为基础,进行工作和权限的分配,企业内部各个部门的管理职能更加清晰完整,各部 门之间通过严格的审核制度,形成紧密而连续的业务流,使企业的资金流、物流、信息流得到有 效的管理和监控,极大程度降低企业经营管理等方面的风险指数。 3.业务管理模式更加灵活、多样化 企业的业务流程各具特色,因而系统提供了可配置的业务流程模式和表单定制模式,使企业可以 根据实际情况配置业务管理流程,既可以满足企业的实际管理要求,又能够对业务流程进行监控 与跟踪。 4.统计分析功能更加丰富、实用化 系统将经营分析、财务分析、图形分析有机结合,为管理人员的决策提供了详尽的、全面的、准 确的数据资料,因而对企业经营情况一目了然,为企业的管理决策提供了充分依据。 5.预警功能更加智能化 系统可以结合采购计划、客户订单和当前库存、商品最高库存、最低库存等数据,给出真实的库 存预警报表,即时给予预警提示,确保企业生产经营正常进行。 6.零售功能强大 多种销售折扣(返点,根据不同的客户定制不同的产品销售价格),询价分析与退货方式等,还 可以对顾客不满意或有问题商品进行退货处理。 7.数据处理安全、方便 系统加强了管理业务过程中敏感数据的保密管理,保障了企业运作的商业安全。系统的自动维护 和备份功能进一步保证了数据的安全性。严谨的权限和业务流程控制可以确保数据不被伪造和篡 改,使企业领导可以充分授权。 8.办公管理趋于协同化、自动化 系统集成了企业收发文管理,加强了企业内部的沟通联系。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值