`
5__1000
  • 浏览: 59533 次
  • 性别: Icon_minigender_1
  • 来自: 地球
社区版块
存档分类
最新评论

gridview里加checkbox cs 文件 纯代码生成

阅读更多


  protected void Page_Load(object sender, EventArgs e)
        {


            string tmpStr = Request.QueryString["pm"];
            string[] strArray = tmpStr.Split('$');
           
          
            string ssss = "";
            div1.Controls.Clear();

             for (int i = 0; i < strArray.Length;i++ )
             {
                 string tableName = strArray[i].Trim();
                 ssss += tableName;
                 GridView gv = new GridView();
                 gv = CreateGridView(tableName);
                 gv.DataSource = NewMethod(tableName);
                 gv.DataBind();
                 div1.Controls.Add(gv);

                 //for (int j = 0; j < div1.Controls.Count; j++)
                // {
                     //我这里是先把GridView加入div1中,之后才进行数据绑定
                   //  ((GridView)div1.Controls[j]).DataSource = NewMethod(tableName);
                    // ((GridView)div1.Controls[j]).DataBind();
                // }

             }
            


          //   bindGV();


             TB.Text = ssss;

        }


        public GridView CreateGridView(string tableName) {

            GridView gv = new GridView();
           
            gv.AutoGenerateColumns = false;
            gv.EnableViewState = true;
            gv.ID = "gridview";
            gv.DataKeyNames = new string[] { "名称" };
          
            BoundField bf = new BoundField();
            bf = new BoundField();
            bf.HeaderText = tableName;
            bf.DataField = "名称";
            gv.Columns.Add(bf);

             TemplateField tfColumn = new TemplateField();
             tfColumn.HeaderText = "";
             tfColumn.ItemTemplate = new MyTemplate("", DataControlRowType.DataRow);
             gv.Columns.Add(tfColumn);
           

            CommandField cf = new CommandField();
            cf.ShowSelectButton = true;
            gv.Columns.Add(cf);
           
            return gv;
       
       
        }

        //控制gridview行数
        private DataTable NewMethod(string tableName)
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("名称", typeof(string));


            SqlOperate so = new SqlOperate();
            string sql = "select name from syscolumns where id in (select id from sysobjects where type = 'u' and name = '"+ tableName +"') ";
            SqlDataReader myRead = so.ExecuteReader(sql);
            //int count = 0;
            while(myRead.Read()){
              
                DataRow dr = dt.NewRow();
                dr["名称"] = myRead[0].ToString();
                dt.Rows.Add(dr);
              
        
         }
      
            return dt;
        }


        public class MyTemplate : ITemplate
        {
            private string strColumnName;
            private DataControlRowType dcrtColumnType;

            public MyTemplate()
            {
                //
                // TODO: 在此处添加构造函数逻辑
                //
            }

            //// <summary>
            /// 动态添加模版列
            /// </summary>
            /// <param name="strColumnName">列名</param>
            /// <param name="dcrtColumnType">列的类型</param>
            public MyTemplate(string strColumnName, DataControlRowType dcrtColumnType)
            {
                this.strColumnName = strColumnName;
                this.dcrtColumnType = dcrtColumnType;
            }

            public void InstantiateIn(Control ctlContainer)
            {
                switch (dcrtColumnType)
                {
                    case DataControlRowType.Header: //列标题
                        Literal ltr = new Literal();
                        ltr.Text = strColumnName;
                        ctlContainer.Controls.Add(ltr);
                        break;
                    case DataControlRowType.DataRow: //模版列内容——加载CheckBox
                        CheckBox cb = new CheckBox();
                        cb.ID = "CheckBox1";
                        cb.Checked = false;
                        ctlContainer.Controls.Add(cb);
                        break;
                }
            }
        }

 

分享到:
评论

相关推荐

    获取GridView中Checkbox的值

    在示例代码中,GridView的ID为"GridView1",并且我们添加了一个TemplateField来自定义Checkbox字段,其ID为"Checkbox1",并使用Eval方法绑定数据行的"id"字段作为Checkbox的value属性。其他BoundField分别展示了...

    GridView与CheckBox结合

    接下来,我们需要在布局文件中为每个GridView项定义一个包含CheckBox的布局。例如,一个简单的XML布局可能如下所示: ```xml &lt;CheckBox android:id="@+id/checkbox" android:layout_width="wrap_content" ...

    GridView和CheckBox结合使用

    当GridView与CheckBox结合使用时,我们可以创建一个功能丰富的界面,让用户能够对多项数据进行选择。 ### GridView基本概念 GridView继承自AbsListView,它会将数据源(通常是ArrayList或Cursor)中的元素按行和列...

    C# GridView+CheckBox删除记录

    ### C# GridView+CheckBox 删除记录实现方法 在Web开发中,使用ASP.NET的GridView控件结合CheckBox进行数据展示与操作是一种常见的应用场景。特别是在涉及到多条记录的管理时,利用CheckBox来辅助用户选择需要操作...

    GridView和CheckBox结合

    本文将基于提供的代码示例来详细解析`GridView`与`CheckBox`结合使用的具体实现方法。 #### 二、准备工作 **1. 数据库准备:** - 使用SQL Server数据库。 - 数据库名为“北风贸易”。 - 表名为“飞狐工作室”,...

    C#_winform_GridView_CheckBox_多选_全选

    在很多情况下,我们需要在GridView中加入复选框(CheckBox)功能,以便用户可以进行多选操作。"C#_winform_GridView_CheckBox_多选_全选"这个主题就专门探讨了如何在WinForm的GridView中实现复选框的多选和全选功能...

    winform中gridview的checkbox使用案例

    本篇文章将深入探讨如何在Winform的GridView中使用Checkbox,并通过具体的案例进行详细讲解。 一、GridView控件基础 1. 添加GridView控件:在Visual Studio的设计视图中,从工具箱拖拽DataGridView控件到窗体上,...

    Gridview中checkBox选择数据的使用

    这段代码实现了当点击“升级”按钮时,遍历Gridview中的每一行,如果该行的CheckBox被选中,则执行相应的操作(如更新或删除)。 #### 总结 通过在Gridview中添加CheckBox,不仅可以提供更好的用户体验,还能极大...

    关于GridView翻页checkBox状态保存的问题

    GridView可以在模板里使用CheckBox控件,但是,如果GridView使用了分页功能,那么在选择不同的分页后,原先选择的CheckBox控件状态,系统将不再维护,该示例代码解决关于GridView翻页checkBox状态保存的问题

    GridView控件中CheckBox(2.0)

    在后台代码中,我们可能需要处理CheckBox的选中状态,例如当用户提交表单时,获取选中的行。可以使用GridView的RowDataBound事件来关联CheckBox和数据行的标识,如下所示: ```csharp protected void gvData_...

    js获得Gridview中选中checkbox行的信息

    在JavaScript环境下,处理GridView的数据交互尤为重要,特别是当需要获取用户通过Checkbox选择的行信息时。本文将详细介绍如何使用JavaScript获取GridView中选中Checkbox行的信息。 首先,理解基础概念: 1. **...

    gridview checkbox 全选

    ### GridView Checkbox 全选功能实现 #### 背景与目的 在Web应用程序开发中,尤其是在使用ASP.NET的GridView控件时,为了提高用户体验并简化数据处理操作,开发者经常需要实现一个“全选”功能。该功能使得用户可以...

    GridView中选择checkBox的项删除事件

    ### GridView中选择checkBox的项删除事件 在ASP.NET Web应用程序中,`GridView`是一个非常强大的控件,用于显示数据源中的数据。它提供了多种交互功能,例如分页、排序等。有时,我们还需要实现对`GridView`中某些...

    通过在GridView中CheckBox多选的批量删除,经典

    这需要对GridView的模板字段进行自定义,通常在ItemTemplate中添加CheckBox,并为每个CheckBox绑定一个独特的标识,以便于后续的处理。同时,为了实现多选功能,还需要在GridView外层添加一个全选/全不选的CheckBox...

    GridView头部放一个CheckBox

    本篇文章将详细解析如何实现在`GridView`头部添加CheckBox以及如何通过代码实现全选功能。 #### 一、理解`GridView`控件 `GridView`是ASP.NET中一个非常强大的数据绑定控件,它允许用户以表格形式显示数据。`...

    GridView结合CheckBox实现多条删除.docx

    这个文档标题提到的“GridView结合CheckBox实现多条删除”就是一种常见的场景,它涉及到GridView控件和CheckBox控件的结合使用,以允许用户选择多个记录进行批量操作。 GridView是ASP.NET中一个强大的数据绑定控件...

    让GridView中CheckBox列支持FireFox

    原始代码中,`selectAll`函数试图通过`obj.parentElement.parentElement.parentElement`获取GridView的表格对象,然后遍历所有的行,找到相应的CheckBox并设置其状态。但是,这种方法在Firefox等浏览器中可能无法...

    checkbox和gridview的结合

    在IT领域,尤其是在Android开发中,`CheckBox`和`GridView`是两个常见的UI组件,它们在构建用户界面时起着至关重要的作用。`CheckBox`是一种复选框控件,允许用户进行多选操作,而`GridView`则是一个网格视图,能够...

    GridView代码生成器

    2. 数据源的绑定:代码生成器会根据所选数据源(如SQL数据库、XML文件或Web服务)生成适当的代码,将数据绑定到GridView。这可能涉及使用SqlDataSource、ObjectDataSource或其他数据源控件,以及配置连接字符串、...

Global site tag (gtag.js) - Google Analytics