• 利用sender的Parent获取GridView中的当前行(转载)


    看论坛里很多人都在问如果获取GridView当行的问题,
    当然解决这个问题有好几个方法:
    1 加RowCommand事件中,判断请求的发出按钮控件名,根据传递的参数来获取当前行中我们需要的参数。
    2 GridView设置datakeynames方式。
    ……
    以上方法实现不再累赘。

    今天给大家介绍一种最方便,也最满足日常思维的好办法:
    采用控件事件的sender的Parent来获取cell对象,再取cell的上级对象,也就是row对象了。简单吧!

    示例如下:
    在第三列中放了一个模板列,放入了一个CheckBox,想法是在选中时,设置第四列Lable状态标识为“T”,取消选中时,第四列Lable状态标识清空

     

    CheckBox直接在模板列中双击,加入以下代码即可。

        protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
        {
            CheckBox chk = (CheckBox) sender;

            DataControlFieldCell dcf = (DataControlFieldCell)chk.Parent;
            GridViewRow gvr = (GridViewRow)dcf.Parent;

            if (chk.Checked)
            {
                Label lab = (Label)gvr.Cells[3].FindControl("Label1");
                lab.Text = "T";
            }
            else
            {
                Label lab = (Label)gvr.Cells[3].FindControl("Label1");
                lab.Text = "";
            }
        }

  • 相关阅读:
    Git常用命令集合
    kubeadm搭建高可用集群-版本1.18.2
    springboot实现事务管理
    定时任务突然中止,告警:Thread starvation or clock leap detected
    Class版本号和Java版本对应关系
    vue开发环境配置
    CentOS配置jar应用程序开机启动的方法
    jvm运行时数据区之程序计数器
    JVM常见面试题及答案
    MYSQL的修改表结构SQL语句
  • 原文地址:https://www.cnblogs.com/maoyu417/p/1133870.html
Copyright © 2020-2023  润新知