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 = "录入成功!";
                }
            }

最新文章

  1. linux下文件压缩与解压操作
  2. C# waitformultipleobjects()
  3. ISE和Modelsim联合仿真(转)
  4. android学习日记03--常用控件progressbar/seekbar
  5. Java_log4j
  6. windows下载安装MariaDB5.5.32 绿色版
  7. 关于开发C#中的asp.net中gridview控件的使用
  8. TCP的状态
  9. MUI初始化滚动区域
  10. jQuery源码研究——解决命名冲突
  11. html标签自带样式总结
  12. jquery 表双击某行时,取出某行中各列的数值.
  13. iOS7 CookBook精彩瞬间(二)NSSet、通过Subscript访问类成员等
  14. Django缓存和内置信号
  15. $Django 多对多-自定义第三张表 基于双下划线的跨表查询(补充)
  16. Ajax状态值及状态码整理
  17. python中使用双端队列解决回文问题
  18. NetBeans数据库笔记---三层架构
  19. 委托----Func和Action
  20. Table转换成实体、Table转换成实体集合(可转换成对象和值类型)

热门文章

  1. 《TCP/IP 详解 卷一》读书笔记-----Ping&amp;Traceroute
  2. 怎样快速学会ZBrush 中的移动笔刷的运用
  3. [cb] Assetbundle打包(一)
  4. centos下pip安装mysql_python
  5. maven总结2
  6. java 21 - 3 字符输入流
  7. Saltstack-初体验
  8. 【Andorid------手势识别】GestureDetector和SimpleOnGestureListener的使用教程(转)——
  9. 用 eric6 与 PyQt5 实现python的极速GUI编程(系列02)---- 省市县(区)下拉列表多级联动
  10. JS insertAdajcentHTML 方法简介