gridview+checkbox的各种操作【转】

简介: 来源:http://hi.baidu.com/heavensxq/item/29736dcfbdc30403c710b2b1 1.首先如何在gridview中加入一个checkbox,注意不是checkboxfiled //在这儿呢,是的,就是这么简单 2.

来源:http://hi.baidu.com/heavensxq/item/29736dcfbdc30403c710b2b1

1.首先如何在gridview中加入一个checkbox,注意不是checkboxfiled

<Columns>
    <asp:TemplateField>
        <ItemTemplate>
            <asp:CheckBox ID="CheckBox1" runat="server" BorderStyle="None" />//在这儿呢,是的,就是这么简单
        </ItemTemplate>
    </asp:TemplateField>
    <asp:BoundField DataField="countyname" HeaderText="县" FooterText="县区" />
    <asp:BoundField DataField="DepartmentId" />
</Columns>

2.全选功能

找到checkbox1是最重要的:CheckBox cbox=(CheckBox)gridview1.Rows[i].FindControl("CheckBox1");

for (int i = 0; i < gridview1.Rows.Count; i++)
{
    CheckBox cbox = (CheckBox)gridview1.Rows[i].FindControl("CheckBox1");
    cbox.Checked = true;
}

这样就能实现全选功能

3.添加选中的项

for (int i = 0; i < gridview1.Rows.Count; i++)
{
     CheckBox cbox=(CheckBox)gridview1.Rows[i].FindControl("CheckBox1");
     if (cbox.Checked == true)
     {
         //添加数据的代码,三层架构啊,神马神马的。。。                   
     }
}

跟全选功能差不多

4.如果要显示数据库中已有的项

就是页面载入给gridview绑定数据的时候,要在RowDataBound事件中完成,没执行一行数据,看符不符合条件让checkbox勾选上

5.访问gridview中隐藏的列

注意,一开始不能就隐藏某列,这样的话是取不到值的

gridview1.Columns[2].Visible = true;//绑定是多次使用的,所以绑定以前一定要看得到
DataSet dscounty = Lib.DBUtility.DbHelperSQL.Query("select * from county left join location on county.countyid=location.countyid and DepartmentId='"+Session["DepartmentId"].ToString().Trim()+"' where county.cityaddresscode='"+dw_city.SelectedValue+"'");
gridview1.DataSource = dscounty;
gridview1.DataBind();
gridview1.Columns[2].Visible = false;//绑定之后就让它隐藏,但是是能够访问并取到值得
参考了网上各位大神的代码,以此为总结。
相关文章
|
C++ Windows
FFmpeg开发笔记(三十九)给Visual Studio的C++工程集成FFmpeg
在Windows上使用Visual Studio 2022进行FFmpeg和SDL2集成开发,首先安装FFmpeg至E:\msys64\usr\local\ffmpeg,然后新建C++控制台项目。在项目属性中,添加FFmpeg和SDL2的头文件及库文件目录。接着配置链接器的附加依赖项,包括多个FFmpeg及SDL2的lib文件。在代码中引入FFmpeg的`av_log`函数输出"Hello World",编译并运行,若看到"Hello World",即表示集成成功。详细步骤可参考《FFmpeg开发实战:从零基础到短视频上线》。
650 0
FFmpeg开发笔记(三十九)给Visual Studio的C++工程集成FFmpeg
|
编解码 API 数据处理
【摄像头数据处理】摄像头数据处理:使用FFmpeg合并、编码和封装视频流
【摄像头数据处理】摄像头数据处理:使用FFmpeg合并、编码和封装视频流
725 0
|
开发工具 数据安全/隐私保护 git
docker安装nexus3
docker安装nexus3以及搭建本地私服
|
监控 数据可视化 Go
实战 | Telegraf+ InfluxDB+Grafana 搭建服务器性能监控平台
在之前的文章《移动端UI自动化过程中的难点及应对策略》中我们讨论了影响移动端自动化稳定性的一些因素,其中宿主机环境是一个不可忽视的问题,大家都知道移动端的自动化一般都需要将设备挂载到实体服务器上运行,如果服务器宿主机出现断网或者磁盘空间不足等情况,都会在一定程度上影响自动化任务的执行,因此今天跟大家分享一下如何做服务器宿主机的监控。
621 0
实战 | Telegraf+ InfluxDB+Grafana 搭建服务器性能监控平台
|
JavaScript 前端开发
[Vue]配置代理
[Vue]配置代理
|
存储 缓存 网络协议
场景应用:常见的HTTP协议请求头有哪些?
场景应用:常见的HTTP协议请求头有哪些?
441 0
|
Web App开发 Android开发 iOS开发
阿里云无影APP客户端下载_无影云电脑下载
阿里云无影APP客户端下载_无影云电脑下载,阿里云无影云电脑APP下载链接入口,支持iOS、Android、Windows、macOS和Web客户端,阿里云百科分享阿里云无影云电脑APP下载链接
1916 0
|
存储 计算机视觉
西门子S7-1200计数器编程实例
计数器用来累计脉冲的个数。在西门子S7-1200 PLC中有三种类型的计数器:加减计数器CTUD、加计数器CTU、减计数器CTD。每个计数器都使用存储块中存储的结构来保存计数器数据。在编辑器中放置计数器指令时,分配相应的数据块即背景数据块。计数值的数值范围取决于所选的数据类型。
西门子S7-1200计数器编程实例
|
存储 负载均衡 算法
什么是LVS
本篇文章介绍什么是LVS,主要从介绍LVS,谈谈什么是负载均衡,LVS的组成、术语以及LVS的模式和特点,以及优缺点。
986 0
vue3使用i18n实现国际化与动态切换语言
vue3使用i18n实现国际化与动态切换语言
vue3使用i18n实现国际化与动态切换语言