- 浏览: 73441 次
- 性别:
- 来自: 厦门
最新评论
-
BlueBing:
linyuliang 写道BlueBing 写道我想再做些修改 ...
IBatis Abator去除注释版 -
linyuliang:
BlueBing 写道我想再做些修改 可否提供下源码呢晚上我回 ...
IBatis Abator去除注释版 -
linyuliang:
xiaohu7924 写道为什么我用这个生成的名字不是你说的驼 ...
IBatis Abator去除注释版 -
xiaohu7924:
为什么我用这个生成的名字不是你说的驼锋名字,还是老样子
IBatis Abator去除注释版 -
BlueBing:
我想再做些修改 可否提供下源码呢
IBatis Abator去除注释版
在Asp.Net 2.0中新增的控件GridView可能是我们使用最普通的控件了,其用来显示数据的能力的确好用。GirdView内置有新增,修改,删除功能,结合ObjectDataSource控件,可以生成很好的三层体系的程序。但美中不足的就是其只支持单数据的操作,对于新增和修改而言倒还可以,但对于删除就不够了。我们往往希望能先选中我们要删除的记录,然后一次性删除,不仅方便而且提高了效率。
为此,我们需要有能实现“全选/全不选”的CheckBox控件来配合GridView控件,以达到我们要实现的目的。
“全选/全不选”的CheckBox控件程序代码如下:
CheckBox.js文件代码如下:
为此,我们需要有能实现“全选/全不选”的CheckBox控件来配合GridView控件,以达到我们要实现的目的。
“全选/全不选”的CheckBox控件程序代码如下:
1using System;
2using System.Collections.Specialized;
3using System.Web;
4using System.Web.UI;
5using System.Web.UI.WebControls;
6
7namespace HughLin.Web.UI.WebControls
8{
9 /// <summary>
10 /// 可全选/全不选复选框控件
11 /// </summary>
12 public class CheckBox : System.Web.UI.WebControls.CheckBox
13 {
14 public CheckBox()
15 {
16 }
17
18 /// <summary>
19 /// 获取或设置被绑定的数据
20 /// </summary>
21 public string BindedValue
22 {
23 get
24 {
25 object obj1 = this.ViewState["BindedValue"];
26 return (obj1 == null) ? string.Empty : (string)obj1;
27 }
28 set
29 {
30 if (!string.IsNullOrEmpty(value))
31 {
32 this.ViewState["BindedValue"] = value;
33 }
34 }
35 }
36
37 /// <summary>
38 /// 获取或设置控件所在的组名称
39 /// </summary>
40 public string Group
41 {
42 get
43 {
44 object obj1 = this.ViewState["Group"];
45 return (obj1 == null) ? string.Empty : (string)obj1;
46 }
47 set
48 {
49 this.ViewState["Group"] = value;
50 }
51 }
52
53 /// <summary>
54 /// 获取或设置一个值,该值标识控件是否为父级别
55 /// </summary>
56 public bool IsParent
57 {
58 get
59 {
60 object obj1 = this.ViewState["IsParent"];
61 return (obj1 == null) ? false : (bool)obj1;
62 }
63 set
64 {
65 this.ViewState["IsParent"] = value;
66 }
67 }
68
69 protected override void OnPreRender(EventArgs e)
70 {
71 if (this.Visible && this.Enabled && !string.IsNullOrEmpty(this.Group))
72 {
73 if (!this.Page.ClientScript.IsClientScriptIncludeRegistered(typeof(CheckBox), "HughLin.CheckBox.js"))
74 {
75 this.Page.ClientScript.RegisterClientScriptResource(typeof(CheckBox), "HughLin.CheckBox.js");
76 }
77 string text1 = "document.getElementById(\"" + this.ClientID + "\")";
78 this.Page.ClientScript.RegisterArrayDeclaration(this.Group, text1);
79 }
80 base.OnPreRender(e);
81 }
82
83 protected override void Render(HtmlTextWriter writer)
84 {
85 if (this.Enabled && this.Visible && !string.IsNullOrEmpty(this.Group))
86 {
87 if (!string.IsNullOrEmpty(this.BindedValue))
88 {
89 writer.AddAttribute("value", this.BindedValue);
90 }
91 writer.AddAttribute("isparent", this.IsParent.ToString());
92 writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "javascript:AspNetV2_Check(this, '" + this.Group + "');");
93 }
94 base.Render(writer);
95 }
96 }
97}
2using System.Collections.Specialized;
3using System.Web;
4using System.Web.UI;
5using System.Web.UI.WebControls;
6
7namespace HughLin.Web.UI.WebControls
8{
9 /// <summary>
10 /// 可全选/全不选复选框控件
11 /// </summary>
12 public class CheckBox : System.Web.UI.WebControls.CheckBox
13 {
14 public CheckBox()
15 {
16 }
17
18 /// <summary>
19 /// 获取或设置被绑定的数据
20 /// </summary>
21 public string BindedValue
22 {
23 get
24 {
25 object obj1 = this.ViewState["BindedValue"];
26 return (obj1 == null) ? string.Empty : (string)obj1;
27 }
28 set
29 {
30 if (!string.IsNullOrEmpty(value))
31 {
32 this.ViewState["BindedValue"] = value;
33 }
34 }
35 }
36
37 /// <summary>
38 /// 获取或设置控件所在的组名称
39 /// </summary>
40 public string Group
41 {
42 get
43 {
44 object obj1 = this.ViewState["Group"];
45 return (obj1 == null) ? string.Empty : (string)obj1;
46 }
47 set
48 {
49 this.ViewState["Group"] = value;
50 }
51 }
52
53 /// <summary>
54 /// 获取或设置一个值,该值标识控件是否为父级别
55 /// </summary>
56 public bool IsParent
57 {
58 get
59 {
60 object obj1 = this.ViewState["IsParent"];
61 return (obj1 == null) ? false : (bool)obj1;
62 }
63 set
64 {
65 this.ViewState["IsParent"] = value;
66 }
67 }
68
69 protected override void OnPreRender(EventArgs e)
70 {
71 if (this.Visible && this.Enabled && !string.IsNullOrEmpty(this.Group))
72 {
73 if (!this.Page.ClientScript.IsClientScriptIncludeRegistered(typeof(CheckBox), "HughLin.CheckBox.js"))
74 {
75 this.Page.ClientScript.RegisterClientScriptResource(typeof(CheckBox), "HughLin.CheckBox.js");
76 }
77 string text1 = "document.getElementById(\"" + this.ClientID + "\")";
78 this.Page.ClientScript.RegisterArrayDeclaration(this.Group, text1);
79 }
80 base.OnPreRender(e);
81 }
82
83 protected override void Render(HtmlTextWriter writer)
84 {
85 if (this.Enabled && this.Visible && !string.IsNullOrEmpty(this.Group))
86 {
87 if (!string.IsNullOrEmpty(this.BindedValue))
88 {
89 writer.AddAttribute("value", this.BindedValue);
90 }
91 writer.AddAttribute("isparent", this.IsParent.ToString());
92 writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "javascript:AspNetV2_Check(this, '" + this.Group + "');");
93 }
94 base.Render(writer);
95 }
96 }
97}
CheckBox.js文件代码如下:
1function AspNetV2_Check(item, group)
2{
3 var itemIsParent = (item.isparent.toLowerCase() == "true") ? true : false;
4 var itemChecked = item.checked;
5 var objArray;
6 try
7 {
8 objArray = eval(group);
9 }
10 catch (e)
11 {
12 return;
13 }
14 if (objArray == null || objArray.length == 0)
15 {
16 return;
17 }
18 if (itemIsParent)
19 {
20 AspNetV2_CheckAll(objArray, itemChecked);
21 }
22 else
23 {
24 AspNetV2_CheckIt(objArray, itemChecked);
25 }
26}
27
28function AspNetV2_CheckIt(newArray, itemChecked)
29{
30 if (!itemChecked)
31 {
32 for (var i = 0; i < newArray.length; i++)
33 {
34 var e = newArray[i];
35 var isParent = (e.isparent.toLowerCase() == "true") ? true : false;
36 if (isParent)
37 {
38 e.checked = false;
39 }
40 }
41 }
42 else
43 {
44 var objAll;
45 var allChecked = 0;
46 for (var i = 0; i < newArray.length; i++)
47 {
48 var e = newArray[i];
49 var isParent = (e.isparent.toLowerCase() == "true") ? true : false;
50 if (e.checked && !isParent)
51 {
52 allChecked++;
53 }
54 else if (isParent)
55 {
56 objAll = e;
57 }
58 }
59 if (allChecked == newArray.length - 1)
60 {
61 objAll.checked = true;
62 }
63 }
64}
65
66function AspNetV2_CheckAll(newArray, itemChecked)
67{
68 for (var i = 0; i < newArray.length; i++)
69 {
70 var e = newArray[i];
71 var isParent = (e.isparent.toLowerCase() == "true") ? true : false;
72 if (!isParent)
73 {
74 if (e.checked != itemChecked)
75 {
76 e.checked = itemChecked;
77 }
78 }
79 }
80}
81
82function AspNetV2_CheckHasData(group)
83{
84 var objArray;
85 var hasData = false;
86 try
87 {
88 objArray = eval(group);
89 }
90 catch (e)
91 {
92 return hasData;
93 }
94 if (objArray == null || objArray.length == 0)
95 {
96 return hasData;
97 }
98 for (var i = 0; i < objArray.length; i++)
99 {
100 var e = objArray[i];
101 if (e.checked)
102 {
103 hasData
2{
3 var itemIsParent = (item.isparent.toLowerCase() == "true") ? true : false;
4 var itemChecked = item.checked;
5 var objArray;
6 try
7 {
8 objArray = eval(group);
9 }
10 catch (e)
11 {
12 return;
13 }
14 if (objArray == null || objArray.length == 0)
15 {
16 return;
17 }
18 if (itemIsParent)
19 {
20 AspNetV2_CheckAll(objArray, itemChecked);
21 }
22 else
23 {
24 AspNetV2_CheckIt(objArray, itemChecked);
25 }
26}
27
28function AspNetV2_CheckIt(newArray, itemChecked)
29{
30 if (!itemChecked)
31 {
32 for (var i = 0; i < newArray.length; i++)
33 {
34 var e = newArray[i];
35 var isParent = (e.isparent.toLowerCase() == "true") ? true : false;
36 if (isParent)
37 {
38 e.checked = false;
39 }
40 }
41 }
42 else
43 {
44 var objAll;
45 var allChecked = 0;
46 for (var i = 0; i < newArray.length; i++)
47 {
48 var e = newArray[i];
49 var isParent = (e.isparent.toLowerCase() == "true") ? true : false;
50 if (e.checked && !isParent)
51 {
52 allChecked++;
53 }
54 else if (isParent)
55 {
56 objAll = e;
57 }
58 }
59 if (allChecked == newArray.length - 1)
60 {
61 objAll.checked = true;
62 }
63 }
64}
65
66function AspNetV2_CheckAll(newArray, itemChecked)
67{
68 for (var i = 0; i < newArray.length; i++)
69 {
70 var e = newArray[i];
71 var isParent = (e.isparent.toLowerCase() == "true") ? true : false;
72 if (!isParent)
73 {
74 if (e.checked != itemChecked)
75 {
76 e.checked = itemChecked;
77 }
78 }
79 }
80}
81
82function AspNetV2_CheckHasData(group)
83{
84 var objArray;
85 var hasData = false;
86 try
87 {
88 objArray = eval(group);
89 }
90 catch (e)
91 {
92 return hasData;
93 }
94 if (objArray == null || objArray.length == 0)
95 {
96 return hasData;
97 }
98 for (var i = 0; i < objArray.length; i++)
99 {
100 var e = objArray[i];
101 if (e.checked)
102 {
103 hasData
发表评论
-
实现GridView控件的删除多条记录功能系列(2)
2005-08-10 14:55 1324在上一篇中,我们已经开发了需要的CheckBox控件, ... -
实现GridView控件的删除多条记录功能系列(3)
2005-08-11 12:18 1334本篇将讲述如何解决GridView控件中使用Check ... -
[转]C#正则表达式小结
2007-09-24 11:38 1221地址: http://www.cnblogs.co ... -
[转]全面剖析C#正则表达式
2007-09-24 11:41 1391地址:http://fineboy.cnblogs.com/ ... -
(转贴)VS.NET下水晶报表分发时的问题及解决
2007-10-18 17:27 1181一、载入报表时报错 ... -
(转贴)图解使用VS.NET部署含水晶报表的网站
2007-10-18 17:56 2139Crystal Report ,中文名称“水晶报表”,因为做报 ... -
[转]VS2005 web程序自定义安装包的制作
2007-10-23 10:28 2122利用VS2005的“Web安装项目”建立安装包很难对安装过程进 ... -
[转]使用C#进行点对点通讯和文件传输(通讯基类部分)
2007-10-24 10:59 935最近一个项目要用到点对点文件传输,俺就到处找资料写程序,最后终 ... -
[转]使用C#进行点对点通讯和文件传输(发送接收部分)
2007-10-24 11:00 1689上面介绍了通讯的基类,下面就是使用那个类进行发送和接收的部分: ... -
[转载]C#中串口通信编程
2007-10-24 11:01 4526原文及源代码位置:http://bbs.msproject.c ... -
[转]C#多线程编程实例实战
2007-10-24 11:02 1679单个写入程序/多个阅读程序在.Net类库中其实已经提供了实现, ... -
[转]实现同时只允许运行一个程序实例
2007-10-24 11:06 1140方法一: /// <summary> /// 从这 ... -
[转]IIS虚拟目录控制类
2007-10-24 11:08 450using System;using System.Data; ... -
[转]C# 调用API,实现注销远程登录本机的用户
2007-10-24 11:08 1854using System;using System.Manag ... -
[转]C#的usb通讯编程
2007-10-24 11:10 2820using System;using System.Colle ... -
[转]IIS站点管理类
2007-10-24 11:10 975using System;using System.Colle ... -
[转]使用.NET实现断点续传
2007-10-24 11:11 1334断点续传的原理 在了解HTTP断点续传的原理之前,先来说说HT ... -
[转]Datagridview 实现二维表头
2007-10-26 16:42 2345最近把我们的b/s系统,增加智能客户端的功能。确实智能客户端是 ... -
[转]Web项目下NHibernate的Session管理的解决方案
2007-11-07 10:47 3398NHibernate的Session的管理一直是个问题,在系统 ... -
[转] NHibernate对像版本控制使用示例
2007-11-07 10:49 1259<version name="Version& ...
相关推荐
### GridView控件的概述 #### 一、简介 在ASP.NET Web应用程序开发中,`GridView`控件扮演着至关重要的角色。它不仅被广泛应用于数据的显示,而且因其丰富的特性和灵活性,在各种复杂的数据交互场景中都有着出色的...
ASP.NET 编程知识 - GridView 控件实现数据的显示和删除 本节学习内容是新闻列表的实现,使用分页功能一个页面显示 4 条新闻。在新闻显示页面,添加一个字段“删除”,运行时,单击该行的“删除按钮时”,弹出...
特别是在涉及到多条记录的管理时,利用CheckBox来辅助用户选择需要操作的数据项变得尤为实用。本文将详细介绍如何在C#环境下使用GridView控件结合CheckBox实现对数据库中记录的删除功能。 #### 一、项目搭建 1. **...
- **复选框**:在 Gridview 中添加 CheckBox 控件,可以方便地让用户选择多条记录。这对于批量操作非常有用,比如批量删除或修改记录。 **6. 鼠标移到 GridView 某一行时改变该行的背景色** - **改变背景色**:当...
对于“删除修改每一条记录”,GridView提供了内置的行编辑和删除功能。开启这些功能,只需设置GridView的AllowEditing和AllowDeleting属性为true。然后,为Edit和Delete按钮绑定适当的事件处理程序,如RowEditing、...
此外,为了实现新闻管理功能,可以使用GridView控件结合数据源控件,通过预定义的查询、修改和删除语句,通过点击GridView中的按钮来触发对新闻条目的相应操作,如修改新闻内容、删除新闻或者查看详细信息。...
GridView由一系列行和列组成,其中每一行代表数据源中的一条记录,而每一列则对应记录的字段。默认情况下,GridView会为每一条记录生成一个模板列,用于显示字段值。 3. 数据绑定: 使用GridView的第一步通常是将...
这个文档标题提到的“GridView结合CheckBox实现多条删除”就是一种常见的场景,它涉及到GridView控件和CheckBox控件的结合使用,以允许用户选择多个记录进行批量操作。 GridView是ASP.NET中一个强大的数据绑定控件...
以上只是部分GridView的使用技巧,实际应用中,开发者还可以结合其他ASP.NET控件和服务器端事件,以及前端技术,实现更多复杂的功能和定制化的用户体验。对于初学者来说,熟练掌握这些技巧将极大地提升开发效率。
一、表头表尾 1、自定义多行表头,列合并,行合并 2、删除表身指定列、行 3、固定表头,向下拉动滚动条时,表头固定不动 4、表脚行统计,总计、平均值 二、导入导出 ...根据主键多条记录删除,单条记录删除。
在实际应用中,常常需要提供全选功能,以便于用户一次性选择多条记录进行批量操作,如删除、修改等。本文将探讨两种在 GridView 控件中实现全选功能的解决方案。 **第一种:利用客户端控件实现全选** 这种方法通过...
首先,GridView控件是用于显示多条记录的表格形式的数据控件,它支持排序、分页、编辑和删除功能。由于其功能强大且易于使用,GridView通常是数据呈现的首选。在.NET 2.0及更高版本中,GridView控件增加了对数据源...
将两者结合使用,可以实现对多条记录的批量操作,如删除、编辑等。本文将基于提供的代码示例来详细解析`GridView`与`CheckBox`结合使用的具体实现方法。 #### 二、准备工作 **1. 数据库准备:** - 使用SQL Server...
在ASP.NET中,GridView控件是用于展示数据的常用组件,它可以轻松地进行数据操作,如添加、编辑和删除。本篇文章将详细讲解如何在GridView...通过这些步骤,用户就能方便地选择并删除多条记录,提高了数据管理的效率。
<asp:LinkButton ID="LinkButton1" runat="server" CommandArgument='("NewsID") %>' CommandName="Delete" OnClientClick="return confirm('您确定要删除这条记录吗?');"> 删除 </asp:GridView> ``` 在...
- 在GridView控件中设置`AllowSorting`属性为`True`。 - 可通过前端JavaScript或者后端代码实现切换排序方向的功能。 #### 4. GridView和下拉菜单`DropDownList`结合 - **功能概述**:在GridView中集成下拉菜单,...
在ASP.NET开发中,GridView控件是一个非常常用的数据展示组件,尤其在网页表格数据的处理上,它提供了丰富的功能和自定义选项。本资源“gridview使用大全”旨在全面讲解如何充分利用GridView控件来实现各种复杂的...
在Gridview中添加CheckBox可以方便地让用户选择一条或多条记录。 #### 如何在Gridview中使用CheckBox 在Gridview中使用CheckBox通常涉及到以下几个步骤: 1. **在Gridview中添加CheckBox列**:首先需要在Gridview...
在ASP.NET Web应用程序中,GridView控件是一种常用的数据展示组件,它可以轻松地绑定到数据源并展示数据。本文将深入探讨GridView的各种使用方法,包括代码分页、保存和恢复CheckBox的状态、排序、与DropDownList和...