1.GridView与DetailsView中的绑定模板不可以进行编辑的问题

方法:将要编辑的列转换为模板列---TemplateField

<EditItemTemplate></EditItemTemplate>---编辑模板

<InsertItemTemplate></InsertItemTemplate>---新建项模板

<ItemTemplate></ItemTemplate>---显示项模板

注:在对应的模板中就可以使用相应的控件,,使用空间是要记得编辑模板列,让控件绑定相应的属性/列名,如图

2.GridView与DetailsView中要实现增删改等操作没反应

方法:重要属性,给空间指定表中的主键值DataKeyNames=主键列/属性

3.GridView中要将某列设置为超链接状态

方法:用到控件中的HyperlinkField--作用是将某一列设置为超链接状态

DataTextField--要绑定的列名或属性名

DataNavigateUrlField--超链接要传的值,一般绑定主键

DataNavigateUrlFormatString--超链接传值的格式--要连接的地址?id={0}     [{0}]--是占位符,,占的是DataNavigateUrlField的值

注:在GridView配合DetailsView使用中   GridView只实现删除的方法,DetailsView实现增、改的方法

GridView跳转到DetailsView是要将设置好的DataNavigateUrlField中的主键值传递给DetailsView,

DetailsView配置数据源时定义来源是QueryString    键的名字--要连接的地址?id={0}中的id

4.DetailsView中的几个事件

ItemInserted--项插入完成后的操作

项目中用到的是插入完成后跳转的别的页面

protected void DetailsView1_ItemInserted(object sender, DetailsViewInsertedEventArgs e)
        {
            //数据插入完成后跳转页面
            Response.Redirect("Teacher.aspx");
        }

ItemUpdating事件--在修改之前,将控件空的值传递给修改模板
 protected void DetailsView1_ItemUpdating(object sender, DetailsViewUpdateEventArgs e)
        {
            CheckBox ckm = (CheckBox)DetailsView1.FindControl("rdoMale");
            CheckBox ckf = (CheckBox)DetailsView1.FindControl("rdoFamle");
        }

5.数据绑定时怎样控制GridView中某一单元格的值

RowDataBound事件--数据绑定完成后触发---三步1.获取2.修改3.显示

 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            //判断成绩是否已经录入,,没录入显示------未录入成绩

            //判断是否是数据行
            if (e.Row.RowType==DataControlRowType.DataRow)
            {
                //是数据行就将行中的对象获取-----获取
                v_Score data = e.Row.DataItem as v_Score;
                //修改
                     TextBox txt = e.Row.Cells[].FindControl("txtScore") as TextBox;
                //显示
                    txt.Text = data.Score == - ? "未录入成绩" : data.Score.ToString();
            }
        }

6.点击按钮实现录入成绩,要循环GridView

在表格中找到某一单元格方法:

GridView1.Rows[i].Cells[5].FindControl("txtScore") as TextBox

//点击录入成绩
        protected void btnUpdateScore_Click(object sender, EventArgs e)
        {
            //循环表格中的每一行,,把主键值,和分数值提取出来(转换成模板之后才能提取)
            ; i < GridView1.Rows.Count; i++)
            {
                TextBox txt = GridView1.Rows[i].Cells[].FindControl("txtScore") as TextBox;
                Label lbl = GridView1.Rows[i].Cells[].FindControl("lblEID") as Label;
                int eid = Convert.ToInt32(lbl.Text);
                double score = Convert.ToDouble(txt.Text);
                int rel = new ElectiveBll().Input(eid, score);
                )
                {
                    lblMSG.Text = "录入成功!";
                }
            }

ASP.NET--GridView配合DetailsView初使用的更多相关文章

  1. 【DevExpress v17.2新功能预告】增强ASP.NET GridView的功能

    在下一个主要版本v17.2中,我们将为DevExpress ASP.NET GridView添加一些优秀的新功能.在本文中为大家介绍的所有功能都可用于 GridView的ASP.NET WebForm ...

  2. 详解ASP.NET4 GridView的四种排序样式

    与ASP.NET 的其他Web控件一能够,Gridview控件拥有很多不同的CSS样式属性设置,包括象CssClass,Font字体,ForeColor,BackColor,BackColor, Wi ...

  3. asp.net gridview 鼠标悬浮提示信息

    使用场景: gridview绑定数据,某列数据太多,故超过一定字符,隐藏起来,同时鼠标移到指定列显示其明细信息: 知识点: 1,oderListTbl_DataBound事件中,添加,oderList ...

  4. asp.net gridview动态添加列,并获取其数据;

    1,绑定数据前先动态添加列,见方法CreateGridColumn(只在第一次加载动态添加): 2,gvlist_RowDataBound为对应列添加控件: 前台代码: <%@ Page Lan ...

  5. Asp.net GridView控件使用纪要

    1:数据绑定 GridView 支持数据绑定的数据源格式比较多,例如可以使用ObjectDataSource绑定数据源, Dataset,datatable,List<T>等 2:列绑定 ...

  6. asp.net Gridview 的用法

    留个档. <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="Fa ...

  7. ASP.NET GridView HyperLinkField传值和取值【转】

    来源:http://www.cnblogs.com/junjie94wan/archive/2011/08/17/2143623.html 经常做Winform程序,好久没有做WEB都有些生疏了,Gr ...

  8. Asp.net Gridview导出Excel

    前台页面放一个GridView什么的就不说了,要注意的是在 <%@ Page Language="C#" AutoEventWireup="true" C ...

  9. asp.net - GridView根据linkButton值不同跳转不同页面

    一,当前页面中,前台界面的主要代码: <asp:TemplateField HeaderText="姓名"> <ItemTemplate> <!--根 ...

随机推荐

  1. 我的opencv之旅:ios人脸识别

    学习opencv有一年多了,这本来是我的毕业设计的一部分,但是因为不能突出专业重点,所以换了个课题. opencv在vc.android.ios下都能用,其中vc和android下的教程和主题贴最多, ...

  2. python中的getattr函数

    getattr(object, name[, default]) -> value Get a named attribute from an object; getattr(x, 'y') i ...

  3. ES5和ES6中对于继承的实现方法

    在ES5继承的实现非常有趣的,由于没有传统面向对象类的概念,Javascript利用原型链的特性来实现继承,这其中有很多的属性指向和需要注意的地方. 原型链的特点和实现已经在之前的一篇整理说过了,就是 ...

  4. Java虚拟机详解03----常用JVM配置参数

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  5. javascript之享元模式

    实现享元模式的一般步骤: 1.将所有外在数据从目标类中剥离.具体做法是尽可能多的删除该类的属性,所删除的应该是那种因实例而异的属性.构造函数的参数也要这样处理,这些参数应该被添加到该类的各个方法. 这 ...

  6. 026医疗项目-模块二:药品目录的导入导出-导入功能的Service的编写

    这个导入功能要实现的效果是: 思路是: 因为我们最后是在Action层中调用的HxlsRead工具,这个工具传入的就是我们要实现的上一篇文章说到的实现了HxlsOptRowsInterface接口的类 ...

  7. WPF:如何为程序添加splashScreen(初始屏幕)

    原文:http://www.cnblogs.com/chenxizhang/archive/2010/03/25/1694606.html 官网: https://msdn.microsoft.com ...

  8. C语言 百炼成钢8

    //题目22:两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z三人.已抽签决定 //比赛名单.有人向队员打听比赛的名单.a说他不和x比,c说他不和x, z比,请编程序找出 //三 ...

  9. C# LUA 闭包

    许多语言中有闭包的概念,C#的闭包以lambda表达式表现,可以实现与LUA完全一样的效果. //LUA------------------------------------------------ ...

  10. Unity架构有点乱

    1,没有合理的将公共的东西归入到基类中,而是分散到子类中,有许多重复. 比如 enbled的变量本应该是所有component所共有的一个属性,应该写在component.然而却发现并非这样,enbl ...