<wijmo:C1TreeView ID="C1TreeView1" runat="server" ShowCheckBoxes="true" ShowExpandCollapse="true" Width="300px"></wijmo:C1TreeView>
<asp:Button ID="ButtonToTable" runat="server" Text="转表格" OnClick="ButtonToTable_Click" Width="58px" />

后台
 DataTable dtOil = GJPDbHelper.DAL.ExecuteDataSet("SELECT [品牌],[类型] FROM  [AIRB_MMTREE] where [treeType] = '1'  group by [品牌],[类型]").Tables[0];

 BindTreeOil(dtOil);
        #region "Optional Interfaces"

        /// ----------------------------------------------------------------------------- 
        /// <summary> 
        /// Registers the module actions required for interfacing with the portal framework 
        /// </summary> 
        /// <value></value> 
        /// <returns></returns> 
        /// <remarks></remarks> 
        /// <history> 
        /// </history> 
        /// ----------------------------------------------------------------------------- 
        public ModuleActionCollection ModuleActions
        {
            get
            {
                ModuleActionCollection Actions = new ModuleActionCollection();
                Actions.Add(GetNextActionID(), Localization.GetString(ModuleActionType.AddContent, this.LocalResourceFile),
                   ModuleActionType.AddContent, "", "add.gif", EditUrl(), false, DotNetNuke.Security.SecurityAccessLevel.Edit,
                    true, false);
                return Actions;
            }
        }         #endregion         /// <summary>
        /// 将数据绑定到C1TreeView1
        /// </summary>
        /// <param name="dtSource">传入两列数据</param>
        private void BindTreeOil(DataTable dtSource)
        {             C1TreeView1.Nodes.Clear();             string topNodeStr = "";             C1TreeViewNode curNode = new C1TreeViewNode(); ;             //DataRow[] rows = dtSource.Select(string.Format("ParentID={0}", parentID));
            foreach (System.Data.DataRow c1row in dtSource.Rows)
            {
                if (topNodeStr != Convert.ToString(c1row[0]))
                {
                    C1TreeViewNode newNode = new C1TreeViewNode();
                    newNode.Value = Convert.ToString(c1row[0]);
                    newNode.Text = Convert.ToString(c1row[0]);                     C1TreeView1.Nodes.Add(newNode);
                    topNodeStr = Convert.ToString(c1row[0]);
                    curNode = newNode;                     C1TreeViewNode newsubNode = new C1TreeViewNode();
                    newsubNode.Value = Convert.ToString(c1row[1]);
                    newsubNode.Text = Convert.ToString(c1row[1]);                     curNode.Nodes.Add(newsubNode);
                }
                else
                {
                    C1TreeViewNode newNode = new C1TreeViewNode();
                    newNode.Value = Convert.ToString(c1row[1]);
                    newNode.Text = Convert.ToString(c1row[1]);                     curNode.Nodes.Add(newNode);                 }
            }
        }         /// <summary>
        /// 建立所选项目的目录框架
        /// </summary>
        /// <param name="ctrv"></param>
        /// <returns></returns>
        protected DataTable checkItemTableOil(C1TreeView ctrv)
        {
            InsusJsUtility js = new InsusJsUtility();
            Boolean itemCountFlag = false;
            string parentText = "";
            int boolCount = 0;
            DataTable infoTable = new DataTable();
            infoTable = GJPDbHelper.DAL.ExecuteDataSet("SELECT '' as pinpai,'' as leixing FROM [AIRB_MMTREE] where [treeType] = '999' ").Tables[0];             foreach (C1TreeViewNode csnode in ctrv.Nodes)
            {
                //csnode.CheckState = C1TreeViewNodeCheckState.Indeterminate;
                if (csnode.CheckState == C1TreeViewNodeCheckState.Checked)
                {
                    if (boolCount > 3)
                    {
                        js.JsAlert("选择油品已大于4个");
                        break;
                    }
                    additemInfoRow(infoTable, csnode.Text, "");
                    boolCount++;
                }
                else if (csnode.CheckState == C1TreeViewNodeCheckState.Indeterminate)
                {
                    foreach (C1TreeViewNode subcsnode in csnode.Nodes)
                    {
                        if (subcsnode.CheckState == C1TreeViewNodeCheckState.Checked)
                        {
                            if (boolCount > 3)
                            {
                                js.JsAlert("选择油品已大于4个");
                                break;
                            }
                            additemInfoRow(infoTable, csnode.Text, subcsnode.Text);
                            boolCount++;
                        }
                    }
                }
            }
            return infoTable;
        }         /// <summary>
        /// 
        /// 快速设置新的结构行
        /// </summary>
        /// <param name="dt"></param>
        /// <param name="level1"></param>
        /// <param name="level2"></param>
        protected void additemInfoRow(DataTable dt, string level1, string level2)
        {
            System.Data.DataRow row;
            row = dt.NewRow();
            // Then add the new row to the collection.
            row[0] = level1;
            row[1] = level2;
            dt.Rows.Add(row);
        }
        //树状图中被选项显示到C1GridView1中
        protected void ButtonToTable_Click(object sender, EventArgs e)
        {
            // 返回目录
            DataTable dt = new DataTable();
            InsusJsUtility js = new InsusJsUtility();
            dt = checkItemTableOil(C1TreeView1);
            int dtCount = dt.Rows.Count;             if (dtCount == 0)
            {
                js.JsAlert("未选择油品!");
            }
            else
            {
                C1GridView1.DataSource = dt;
                C1GridView1.DataBind();                 ButtonToDsr.Visible = true;
            }         }
												

c# 后台绑定treeview 单个tab的更多相关文章

  1. c# 后台绑定treeview 多个tab

    <wijmo:C1Tabs ID="C1Tab1" runat="server" ><%--OnSelectedChanged="& ...

  2. TreeView控件之,后台构建TreeView(WinForm小程序)

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAX0AAAIdCAIAAABeBzrBAAAgAElEQVR4nOzdd5Qc130n+tl/nr3e5+

  3. GridView后台绑定数据列表方法

    在很多时候数据绑定都是知道了数据表中的表字段来绑定GridView控件的,那时候我就有个想法希望通过表明来查询数据库中的字段来动态的绑定GirdView控件数据并提供了相关的操作列,在网上找了一些资料 ...

  4. MVC 传递数据 从前台到后台,包括单个对象,多个对象,集合

    MVC 传递数据 从前台到后台,包括单个对象,多个对象,集合 1.基本数据类型 我们常见有传递 int, string, bool, double, decimal 等类型. 需要注意的是前台传递的参 ...

  5. WPF DATAGrid 空白列 后台绑定列 处理

    原文:WPF DATAGrid 空白列 后台绑定列 处理 AutoGenerateColumns <DataGrid x:Name="dataGrid" Margin=&qu ...

  6. HighChat动态绑定数据 数据后台绑定(四)

    后台绑定数据,直接返回json数据 IList<SummaryHour> adHourData = summarybll.FindList(str); List<, , , , , ...

  7. HighChat动态绑定数据 数据后台绑定(三)

    今天看了几位大佬的博客,学到了一些,现在分享一下,也作为以后的参考 不多说看代码 1.后台代码 public ActionResult Ajax2() { ReportData reportData ...

  8. Asp.net MVC 传递数据 从前台到后台,包括单个对象,多个对象,集合

    今天为大家分享下 Asp.net MVC 将数据从前台传递到后台的几种方式. 环境:VS2013,MVC5.0框架 1.基本数据类型 我们常见有传递 int, string, bool, double ...

  9. 《转》---使用递归方法DataTable 绑定 TreeView

    转自:http://blog.sina.com.cn/s/blog_8944756d01016yaj.html 前台: <asp:View ID="view0" runat= ...

随机推荐

  1. SQLServer锁的基础问题探究

    SqlServer需要在执行操作前对目标资源获取所有权,那么久发生锁定,是一个逻辑概念.为了保证事务的ACID特性设计的一种机制. 在多用户并发操作数据时,为了出现不一致的数据,锁定是必须的机制.使用 ...

  2. 源码编译安装net-snmp

    https://blog.csdn.net/u013992330/article/details/79712405 https://wenku.baidu.com/view/24368a2257125 ...

  3. Http系列笔记

    万能的HttpClient (Framework与NetCore 都支持) string url = "http://localhost:5000/api/values"; //p ...

  4. [转] node.js下mongoose简单操作实例

    Mongoose API : http://mongoosejs.com/docs/api.html // mongoose 链接 var mongoose = require('mongoose') ...

  5. [转]CR, LF, CR/LF区别与关系

    http://weizhifeng.net/talking-about-cr-lf.html 前言 在文本处理中,CR(Carriage Return),LF(Line Feed),CR/LF是不同操 ...

  6. lvs-dr

    第5节  dr模型 在rs上配置 :rip  和vip   vip定义在lo别名上 Director 上配置:vip  和dip 都只需要一块网卡  网卡都桥接 Vip: 192.168.0.105 ...

  7. Zepto的使用以及注意事项

       为什么选择Zepto.js的原因: zepto.js的语法借鉴并且兼容jQuery,会使用jquery就会使用Zepto.js.Zepto.js是移动端的js库.Zepto.js相当于PC端的j ...

  8. BZOJ2527 [Poi2011]Meteors 整体二分 树状数组

    原文链接http://www.cnblogs.com/zhouzhendong/p/8686460.html 题目传送门 - BZOJ2527 题意 有$n$个国家. 太空里有$m$个太空站排成一个圆 ...

  9. .bat批处理添加Python任务

    一.常用命令含义 例一.多进程python 任务  --  start 命令 @echo offstart python C:\Users\ntitled\n\update_restt\test_ba ...

  10. B-number 数位dp

    求有 13且能被13整除的个数 显然已目前的四个状态无法对问题进行完全解答了   关于能否被13整除  有必要加一个mod状态 当pre为2的时候说明已经存在过13了(直接继承即可)  当pre为1说 ...