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的ID为"GridView1",并且我们添加了一个TemplateField来自定义Checkbox字段,其ID为"Checkbox1",并使用Eval方法绑定数据行的"id"字段作为Checkbox的value属性。其他BoundField分别展示了...
接下来,我们需要在布局文件中为每个GridView项定义一个包含CheckBox的布局。例如,一个简单的XML布局可能如下所示: ```xml <CheckBox android:id="@+id/checkbox" android:layout_width="wrap_content" ...
当GridView与CheckBox结合使用时,我们可以创建一个功能丰富的界面,让用户能够对多项数据进行选择。 ### GridView基本概念 GridView继承自AbsListView,它会将数据源(通常是ArrayList或Cursor)中的元素按行和列...
### C# GridView+CheckBox 删除记录实现方法 在Web开发中,使用ASP.NET的GridView控件结合CheckBox进行数据展示与操作是一种常见的应用场景。特别是在涉及到多条记录的管理时,利用CheckBox来辅助用户选择需要操作...
本文将基于提供的代码示例来详细解析`GridView`与`CheckBox`结合使用的具体实现方法。 #### 二、准备工作 **1. 数据库准备:** - 使用SQL Server数据库。 - 数据库名为“北风贸易”。 - 表名为“飞狐工作室”,...
在很多情况下,我们需要在GridView中加入复选框(CheckBox)功能,以便用户可以进行多选操作。"C#_winform_GridView_CheckBox_多选_全选"这个主题就专门探讨了如何在WinForm的GridView中实现复选框的多选和全选功能...
本篇文章将深入探讨如何在Winform的GridView中使用Checkbox,并通过具体的案例进行详细讲解。 一、GridView控件基础 1. 添加GridView控件:在Visual Studio的设计视图中,从工具箱拖拽DataGridView控件到窗体上,...
这段代码实现了当点击“升级”按钮时,遍历Gridview中的每一行,如果该行的CheckBox被选中,则执行相应的操作(如更新或删除)。 #### 总结 通过在Gridview中添加CheckBox,不仅可以提供更好的用户体验,还能极大...
GridView可以在模板里使用CheckBox控件,但是,如果GridView使用了分页功能,那么在选择不同的分页后,原先选择的CheckBox控件状态,系统将不再维护,该示例代码解决关于GridView翻页checkBox状态保存的问题
在后台代码中,我们可能需要处理CheckBox的选中状态,例如当用户提交表单时,获取选中的行。可以使用GridView的RowDataBound事件来关联CheckBox和数据行的标识,如下所示: ```csharp protected void gvData_...
在JavaScript环境下,处理GridView的数据交互尤为重要,特别是当需要获取用户通过Checkbox选择的行信息时。本文将详细介绍如何使用JavaScript获取GridView中选中Checkbox行的信息。 首先,理解基础概念: 1. **...
### GridView Checkbox 全选功能实现 #### 背景与目的 在Web应用程序开发中,尤其是在使用ASP.NET的GridView控件时,为了提高用户体验并简化数据处理操作,开发者经常需要实现一个“全选”功能。该功能使得用户可以...
### GridView中选择checkBox的项删除事件 在ASP.NET Web应用程序中,`GridView`是一个非常强大的控件,用于显示数据源中的数据。它提供了多种交互功能,例如分页、排序等。有时,我们还需要实现对`GridView`中某些...
这需要对GridView的模板字段进行自定义,通常在ItemTemplate中添加CheckBox,并为每个CheckBox绑定一个独特的标识,以便于后续的处理。同时,为了实现多选功能,还需要在GridView外层添加一个全选/全不选的CheckBox...
本篇文章将详细解析如何实现在`GridView`头部添加CheckBox以及如何通过代码实现全选功能。 #### 一、理解`GridView`控件 `GridView`是ASP.NET中一个非常强大的数据绑定控件,它允许用户以表格形式显示数据。`...
这个文档标题提到的“GridView结合CheckBox实现多条删除”就是一种常见的场景,它涉及到GridView控件和CheckBox控件的结合使用,以允许用户选择多个记录进行批量操作。 GridView是ASP.NET中一个强大的数据绑定控件...
原始代码中,`selectAll`函数试图通过`obj.parentElement.parentElement.parentElement`获取GridView的表格对象,然后遍历所有的行,找到相应的CheckBox并设置其状态。但是,这种方法在Firefox等浏览器中可能无法...
在IT领域,尤其是在Android开发中,`CheckBox`和`GridView`是两个常见的UI组件,它们在构建用户界面时起着至关重要的作用。`CheckBox`是一种复选框控件,允许用户进行多选操作,而`GridView`则是一个网格视图,能够...
2. 数据源的绑定:代码生成器会根据所选数据源(如SQL数据库、XML文件或Web服务)生成适当的代码,将数据绑定到GridView。这可能涉及使用SqlDataSource、ObjectDataSource或其他数据源控件,以及配置连接字符串、...