之前有一个范例,相同的结果可以用两种作法来实践

[GridView] 资料系结表达式?或是RowDataBound事件来作?

我觉得这种教学方法很不错,「同一个题目,有多种解法

(如同下面的李小龙图片所说的,"熟练度"很重要)

学生反应比较热烈,也可以挑自己惯用的、自己(目前程度)学得会的方式来处理

想要当个职场成功者,李小龙的精神你该学学!http://buzzorange.com/vidaorange/2015/07/17/bruce-jun-fan-lee-quote/

(点选图片,可连到原文)

有位读者想要知道 控件的 PreRender事件

为什么上网找「GridView合并域、合并相同记录」都是在 GridView的 PreRender事件完成呢?

我们先做几个范例,然后再来看看MSDN网站的说明

先「做」再「学」,希望让您比较好理解。

把以前的范例,改用 GridView  的 PreRender事件来做

[习题] FindControl 简单练习--GridView + CheckBox,点选多列数据(复选删除)#1 简单版

[习题] FindControl 简单练习--GridView + CheckBox,点选多列数据(复选删除) #2 - 分页&范例下载

原先的范例,在书本上集(ASP.NET专题实务(I) / 松岗出版)第十章就有解说

您先看一下 YouTube影片,大致了解我们要做的内容:

YouTube影片教学  https://youtu.be/LnYXiyQghKs

Q:  在 GridView里面,每一列数据都加上 CheckBox,

     被勾选的那一列,就要删除之。 

把原本 RowDataBound事件改成 PreRender事件来做,有两大修改:

第一,RowDataBound事件里面,那一段 if (e.Row.RowType)判别式消失了

所以必须自己写一段 for 循环

第二,使用到 e.Row......的地方,改成 GridView1.Rows[i]即可

protected void GridView1_PreRender(object sender, EventArgs e)

    {
        if(Session["delete_ID"].ToString() != ......)
        {
            for (int i = 0; i < GridView1.Rows.Count; i++)
            {
                CheckBox myCheckbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
 
                Label myID = (Label)GridView1.Rows[i].FindControl("Label1");
                //.....后续省略.....直接套用以前范例即可
            }
 
        }
    }
 

=========================================================================

完成后,我们来看 MSDN网站的说明 -- 控件的 PreRender事件

...... 在 Control 对象加载之后  但在呈现之前发生。

做过几个范例以后,对于原厂的说明,会不会比较「有感」?

所以,要靠实作、范例来「体会」,必须自己练!自己动手!自己设计情境!

不能只看书、看文字....... 这不是在应付学校的考试?不是 写考卷 的"是非题、选择题、申论题"

东西「写」不出来就惨了,

老板跟客户不在乎我们学校成绩有多好,他要看见程序「正确运作」的结果

=========================================================================

如果一个答案,您有 "多种"解法可以处理

恭喜!出师了!

类似范例:

GridView的 PreRender事件与范例-- [Case Study]成绩低于60分就出现红字 & 分数加总(累加)

GridView的 PreRender事件与范例--GridView + CheckBox,点选多列资料(复选删除)的更多相关文章

  1. GridView的 PreRender事件与 RowCreated、RowDataBound事件大乱斗

    GridView的 PreRender事件与 RowCreated.RowDataBound事件大乱斗 之前写了几个范例,做了GridView的 PreRender事件与 RowCreated.Row ...

  2. 方便实用的jQuery checkbox复选框全选功能

    // 主复选框 <input type="checkbox" id="ck" name="ckAll">// 子复选框项 < ...

  3. checkbox复选框样式

    随着现代浏览器的流行,纯CSS设置checkbox也变的很是实用,下面会讲到5种与众不同的checkbox复选框. 首先,需要添加一段CSS隐藏所有的Checkbox复选框,下面我们会改变它的外观.要 ...

  4. 安卓开发_复选按钮控件(CheckBox)的简单使用

    复选按钮 即可以选择若干个选项,与单选按钮不同的是,复选按钮的图标是方块,单选按钮是圆圈 复选按钮用CheckBox表示,CheckBox是Button的子类,支持使用Button的所有属性 一.由于 ...

  5. ZH奶酪:纯CSS自定义Html中Checkbox复选框样式

    原文链接:http://www.lrxin.com/archives-683.html 首先看下效果: 点击演示地址查看实例. 首先,需要添加一段CSS隐藏所有的Checkbox复选框,之后我们会改变 ...

  6. 复选框input:checkbox

      复选框 CreateTime--2017年6月5日14:04:55Author:Marydon 五.复选框 (一)语法 <input type="checkbox" /& ...

  7. layui获取checkbox复选框值

    获取layui表单复选框已选中的数据 HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8 ...

  8. 关于checkbox复选框

    1.复选框后面为什么会有间距,如图 首先这肯定不是空格.实际上是这样的,在Firefox,chrome,Safari等现代浏览器下复选框与文字的间隔确实是由margin引起的,也就是默认情况下,che ...

  9. 复选框(checkbox)、单选框(radiobox)的使用

    复选框(checkbox).单选框(radiobox)的使用 复选框: HTML: // 复选框 <input type="checkbox" name="chec ...

随机推荐

  1. 网格概念 Gutter

    Bootstrap4也是由以上基础概念作为发展 Bootstrap 栅栏式排版 , 总栏数为12  (以下代码探寻问题, 实际上使用方法是错误的) <style> .box { heigh ...

  2. Go:坑之for range

    go只提供了一种循环方式,即for循环,在使用时可以像c那样使用,也可以通过for range方式遍历容器类型如数组.切片和映射.但是在使用for range时,如果使用不当,就会出现一些问题,导致程 ...

  3. 浅谈UML——九种图(一)

    前言 学UML将近两个星期了,对UML有了一定的了解,学过的没学过的都知道UML中最最最核心的部分要数那九个图了.浅谈UML九种图. 实例 1.用例图: 什么是用例?描绘一个系统外在可见的需求情况,是 ...

  4. tomcat与jetty接收请求参数的区别

    [场景] 服务端点对点通知.A服务发起请求B服务,B同步返回接收成功:然后B开始处理逻辑:B处理完成后异步通知给A:A接收请求并处理,同步回写响应给B:完成. [先上代码] 服务端(接收端)代码: i ...

  5. ps怎样简单快速去除图片上的文字

    具体步骤如下: 1.选择"修补工具": 2.在公共栏中选择"源": 3."图像"->"模式"中选择"RG ...

  6. Jenkins+Jmeter+Ant自动化持续集成环境搭建

    [前言] 今天让我们先把准备工作做好 >> 搭建环境! [正文] JDK+Jmeter安装教程: 参考博客:https://www.cnblogs.com/baoziluo/p/79056 ...

  7. 洛谷P2812校园网络【Network of Schools加强版】

    题目背景 浙江省的几所\(OI\)强校的神犇发明了一种人工智能,可以\(AC\)任何题目,所以他们决定建立一个网络来共享这个软件.但是由于他们脑力劳动过多导致全身无力身体被\(♂\)掏\(♂\)空,他 ...

  8. MySQL库改名、表改名

    数据库中的库或表在开发环境下可能需要改名,关于MySQL的改名步骤如下: 1.备份数据库,备份后就可以安心的去改名了,如果操作错误还可以及时恢复 mysqldump -R -uroot -p 数据库名 ...

  9. CBV 与 FBV

    FBV:function based view 视图函数,是指之前用的 views.py 中基于函数的开发,url 都是通过函数来实现的,每个 url 对应的函数之间都是独立的. 直接在views.p ...

  10. Eclipse与异常处理

    快捷键:Ctrl+d删除光标所在的这一行 Alt+/ 智能提示 异常处理 异常是阻止当前方法或作用域继续执行的问题,在程序中导致程序中断运行的一些指令. try与catch关键字 try{ //有可能 ...