ASP.NET--GridView配合DetailsView初使用
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初使用的更多相关文章
- 【DevExpress v17.2新功能预告】增强ASP.NET GridView的功能
在下一个主要版本v17.2中,我们将为DevExpress ASP.NET GridView添加一些优秀的新功能.在本文中为大家介绍的所有功能都可用于 GridView的ASP.NET WebForm ...
- 详解ASP.NET4 GridView的四种排序样式
与ASP.NET 的其他Web控件一能够,Gridview控件拥有很多不同的CSS样式属性设置,包括象CssClass,Font字体,ForeColor,BackColor,BackColor, Wi ...
- asp.net gridview 鼠标悬浮提示信息
使用场景: gridview绑定数据,某列数据太多,故超过一定字符,隐藏起来,同时鼠标移到指定列显示其明细信息: 知识点: 1,oderListTbl_DataBound事件中,添加,oderList ...
- asp.net gridview动态添加列,并获取其数据;
1,绑定数据前先动态添加列,见方法CreateGridColumn(只在第一次加载动态添加): 2,gvlist_RowDataBound为对应列添加控件: 前台代码: <%@ Page Lan ...
- Asp.net GridView控件使用纪要
1:数据绑定 GridView 支持数据绑定的数据源格式比较多,例如可以使用ObjectDataSource绑定数据源, Dataset,datatable,List<T>等 2:列绑定 ...
- asp.net Gridview 的用法
留个档. <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="Fa ...
- ASP.NET GridView HyperLinkField传值和取值【转】
来源:http://www.cnblogs.com/junjie94wan/archive/2011/08/17/2143623.html 经常做Winform程序,好久没有做WEB都有些生疏了,Gr ...
- Asp.net Gridview导出Excel
前台页面放一个GridView什么的就不说了,要注意的是在 <%@ Page Language="C#" AutoEventWireup="true" C ...
- asp.net - GridView根据linkButton值不同跳转不同页面
一,当前页面中,前台界面的主要代码: <asp:TemplateField HeaderText="姓名"> <ItemTemplate> <!--根 ...
随机推荐
- js制作倒计时效果
该程序可以计算任意指定的两个日期中间的差值. 本例子的指定日期是2017年1月1日,当前时间是2016年10月21日:计算它们之间的差值,在网页上显示如图所示: 关键部分代码: var nowtime ...
- CentOS安装Hypernetes相关问题解法
1.手动编译hyper缺少libdevmapper.h git clone -b v2_02_103 https://git.fedorahosted.org/git/lvm2.git /usr/lo ...
- java操作excel文件
采用POI操作excel API:http://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFCell.html poi包:http ...
- 边工作边刷题:70天一遍leetcode: day 75-1
Shortest Word Distance I/II/III 要点:系列题最重要的是记清题,重点是题目本身的变化和解法之间的关联. I https://repl.it/CqPf 这题的一般规律从左到 ...
- sublime Text 2 安装Sublime Package Control
Sublime Text 2 安装 Sublime Package Control,通过 Sublime Package Control,安装.升级和卸载 Package. 安装 Package Co ...
- python读取数据库数据有乱码怎么解决?
http://blog.sina.com.cn/s/blog_6826662b0100yeze.html 简单暴力,直接上代码 conn = MySQLdb.connect(host = " ...
- 学习web前端三个月感悟
总结一下自己学习前端三个月的进步和不足: 其实也算机遇,开学时,便有一个PHP培训,只记得当时拿到培训课程的时候,第一感觉就是 好难,什么留言板制作,学生信息系统的制作,navicat和PHP结合使用 ...
- AC日记——手写堆ac合并果子(傻子)
今天整理最近的考试题 发现一个东西叫做优先队列 priority_queue(说白了就是大根堆) 但是 我对堆的了解还是很少的 所以 我决定手写一个堆 于是我写了一个简单的堆 手写的堆说白了就是个二叉 ...
- AutoIT脚本的语法特征
这里主要介绍AutoIT的脚本语法特征,包括变量.关键字.宏.设置选项等,详细的语法细节,可以参考其用户手册,也可以去AutoIT中文论坛(www.autoit.net.cn)交流. 1. 变量 Au ...
- 报错"the geometry has no Z values"处理
); //将Z值设置为0 //IPoint point = (IPoint)pGeo; //point.Z = 0; } else { IZAwa ...