GridView数据绑定


<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="WebApplication1.Index"%>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID=">
<Columns>
<asp:TemplateField HeaderText="全选" >
<HeaderTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Text="全选" onclick="checkAll(this)" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox2" runat="server" />
<asp:HiddenField ID="HiddenField1" runat="server" Value='<%# Eval("stuID") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="stuName" HeaderText="姓名" />
<asp:BoundField DataField="stuNo" HeaderText="学号" />
<asp:BoundField DataField="sex" HeaderText="性别" />
<asp:TemplateField HeaderText="操作">
<ItemTemplate>
<asp:Button ID="Button2" runat="server" Text="编辑" CommandArgument='<%# Eval("stuID") %>' OnClick="Button2_Click" />
<asp:Button ID="Button3" runat="server" Text="删除" CommandArgument='<%# Eval("stuID") %>' OnClick="Button3_Click" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="White" ForeColor="#000066" />
<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
<PagerTemplate>
<asp:Button ID="Button1" runat="server" Text="Button" />
</PagerTemplate>
<RowStyle ForeColor="#000066" />
<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#007DBB" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#00547E" />
</asp:GridView>
<asp:Button ID="Button4" runat="server" Text="新增" OnClick="Button4_Click" />
</div>
</form>
</body>
</html>
<script type="text/javascript">
function checkAll(v){
var arr = document.getElementById("GridView1").getElementsByTagName("input");
; i < arr.length; i++) {
if (arr[i].type == "checkbox")
{
arr[i].checked = v.checked;
}
}
}
</script>
Index页面
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class Index : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
BindeList();
}
private void BindeList()//第一次加载
{
if (!Page.IsPostBack)
{
Bindlist2();
}
}
private void Bindlist2()
{
string sql = "select * from student";
string strcon = "server=DESKTOP-QQGOIKH;database=stuDB;uid=sa;pwd=123";
SqlConnection sqlcon = new SqlConnection(strcon);
//创建适配器实例,在dataset与数据之间架起桥梁作用
SqlDataAdapter myda = new SqlDataAdapter(sql, sqlcon);
//创建dataset实例数据集
DataSet myds = new DataSet();
//打开数据库
sqlcon.Open();
//将表填充到数据集
myda.Fill(myds, "staff");
GridView1.DataSource = myds;
GridView1.DataKeyNames = new string[] { "stuID" };
GridView1.DataBind();
}
//编辑
protected void Button2_Click(object sender, EventArgs e)
{
//sender代表button内容
Button bt = sender as Button;//尝试sender转换为button类型,如果无法转换,将返回一个空值
string id = bt.CommandArgument;
Response.Redirect("updateLinst.aspx?id=" + id);
}
//删除
protected void Button3_Click(object sender, EventArgs e)
{
//多项删除
;//计数器
//遍历griview
foreach (GridViewRow item in GridView1.Rows)//foreach不能直接遍历gridview,只能遍历行的集合
{
CheckBox cb = item.Cells[].FindControl("CheckBox2") as CheckBox;//sender as CheckBox错误
//获取每一行第一列的服务器控件为checkBo2的内容
if (cb.Checked)
{
HiddenField hf = item.Cells[].FindControl("HiddenField1") as HiddenField;
string id = hf.Value;
string sql = "delete from student where stuID=@a";
SqlParameter pms = new SqlParameter("@a", id);
SqlConnection conn = new SqlConnection("server=DESKTOP-QQGOIKH;database=stuDB;uid=sa;pwd=123");
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.Add(pms);
int i = cmd.ExecuteNonQuery();
count += i;
conn.Close();
}
}
)
{
Response.Write("一共删除了"+count+"条数据");
Bindlist2();
}
else
{
Response.Write("删除失败");
}
}
protected void Button4_Click(object sender, EventArgs e)
{
Response.Redirect("insertList.aspx");
}
}
}
Index后台
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="updateLinst.aspx.cs" Inherits="WebApplication1.updateLinst" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="姓名"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br />
<asp:Label ID="Label2" runat="server" Text="编号"></asp:Label>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<br />
<asp:Label ID="Label3" runat="server" Text="学号"></asp:Label>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<br />
<asp:Button ID="Button1" runat="server" Text="提交" OnClick="Button1_Click" />
<asp:Button ID="Button2" runat="server" Text="返回" OnClick="Button2_Click" />
</div>
</form>
</body>
</html>
修改页面
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class updateLinst : System.Web.UI.Page
{
string strcon = "server=DESKTOP-QQGOIKH;database=stuDB;uid=sa;pwd=123";
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
string id = Request["id"].ToString();
//取stuID对应的数据
string sql = "select * from student where stuID=@a";
SqlParameter pms = new SqlParameter("@a", id);
//ADO.NET操作
SqlConnection conn = new SqlConnection(strcon);
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
//传入参数
cmd.Parameters.Add(pms);
//执行
SqlDataReader sdr = cmd.ExecuteReader();
//读取
bool b = sdr.Read();//b代表是否读取到数据
if (b==true)
{
TextBox1.Text = sdr["stuName"].ToString();
TextBox2.Text = sdr["stuNo"].ToString();
TextBox3.Text = sdr["sex"].ToString();
}
conn.Close();
}
}
//提交
protected void Button1_Click(object sender, EventArgs e)
{
//取到id
string id = Request["id"];
string sql = "update student set stuName=@b,stuNo=@c,sex=@d where stuID=@a";
SqlParameter[] pms = ];
pms[] = new SqlParameter("@a", id);
pms[] = new SqlParameter("@b", TextBox1.Text);
pms[] = new SqlParameter("@c", TextBox2.Text);
pms[] = new SqlParameter("@d", TextBox3.Text);
//ADO.NET操作
SqlConnection conn = new SqlConnection(strcon);
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.Add(pms[]);
cmd.Parameters.Add(pms[]);
cmd.Parameters.Add(pms[]);
cmd.Parameters.Add(pms[]);
int i = cmd.ExecuteNonQuery();
conn.Close();
)
{
Response.Write("修改成功");
}
else
{
Response.Write("修改失败");
}
}
//返回
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("Index.aspx");
}
}
}
修改后台
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="insertList.aspx.cs" Inherits="WebApplication1.insertList" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="姓名"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br />
<asp:Label ID="Label2" runat="server" Text="学号"></asp:Label>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<br />
<asp:Label ID="Label3" runat="server" Text="性别"></asp:Label>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<br />
<asp:Button ID="Button1" runat="server" Text="提交" OnClick="Button1_Click" />
</div>
</form>
</body>
</html>
新增页面
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class insertList : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
//新增提交
protected void Button1_Click(object sender, EventArgs e)
{
string sql = "insert into student (stuName, stuNo,sex) values (@a, @b,@c)";
string strcon = "server=DESKTOP-QQGOIKH;database=stuDB;uid=sa;pwd=123";
SqlParameter[] pms = ];
pms[] = new SqlParameter("@a", TextBox1.Text);
pms[] = new SqlParameter("@b", TextBox2.Text);
pms[] = new SqlParameter("@c", TextBox3.Text);
//ADO.NET操作
SqlConnection conn = new SqlConnection(strcon);
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.Add(pms[]);
cmd.Parameters.Add(pms[]);
cmd.Parameters.Add(pms[]);
int i = cmd.ExecuteNonQuery();
conn.Close();
)
{
Response.Write("添加成功");
Response.Redirect("index.aspx");
}
else
{
Response.Write("添加失败");
}
}
}
}
新增后台
GridView数据绑定的更多相关文章
- GridView数据绑定控件的模版列时设置显示的格式
形式 语法 结果 数字 {0:N2} 12.36 数字 {0:N0} 13 货币 {0:c2} $12.36 货币 {0:c4} $12.3656 货币 "¥{0:N2}&q ...
- Android GridView数据绑定
java代码构造个泛型数组用于存放item,作为title List<Map<String, Object>> items = new ArrayList< ...
- GridView--scroolview嵌套listview和gridview
我们在真实项目中通常会遇到ListView或者GridView嵌套在ScrollView中问题.但是做的时候会发现,一旦两者进行嵌套,即会发生冲突.得不到我们希望的效果.由于ListView和Grid ...
- GridView 编辑修改
//点击gridview控件自带的编辑按钮时执行的事件 protected void gvNewsList_RowEditing(object sender, GridViewEditEvent ...
- Windows 8实例教程系列 - 数据绑定高级实例
原文:Windows 8实例教程系列 - 数据绑定高级实例 上篇Windows 8实例教程系列 - 数据绑定基础实例中,介绍Windows 8应用开发数据绑定基础,其中包括一些简单的数据绑定控件的使用 ...
- 如何让Gridview在没有数据的时候显示表头(asp.net)
原文:如何让Gridview在没有数据的时候显示表头(asp.net) 1.前言 当对GridView控件进行数据绑定时,如果绑定的记录为空,网页上就不显示GridView,造成页面部分空白,页面布局 ...
- Gridview标题头添加排序图片
向gridview标题头中添加排序图片,当点击某一个头标题时,在标题中出现升序箭头向上的图片,再点击一次时降序,在标题中出现箭头向下的图片,初始页面时在标题头中并不现实任何图片. 先定义好一个grid ...
- Asp.net中GridView详解《转》
ASP.NET服务器控件GridView 1 ASP.NET 服务器控件GridView使用 本教程不介绍服务器端控件的呈现,事件处理,状态等理论知识,只介绍服务器端控件的使用操作,如 ...
- Gridview各种功能+AspNetPager+Ajax实现无刷新存储过程分页 (留着用)
存储过程: GetProductsCount1: GetProductsByPage: ) * @PageSize) +' id from test)' exec sp_executesql @sql ...
随机推荐
- 【OpenWRT】【RT5350】【三】MakeFile文件编写规则和OpenWRT驱动开发步骤
一.Makefile文件编写 http://www.cnblogs.com/majiangjiang/articles/3218002.html 可以看下上面的博客,总结的比较全了,在此不再复述 二. ...
- 各种同步方法性能比较(synchronized,ReentrantLock,Atomic)
synchronized: 在资源竞争不是很激烈的情况下,偶尔会有同步的情形下,synchronized是很合适的.原因在于,编译程序通常会尽可能的进行优化synchronize,另外可读性非常好,不 ...
- 快速学习html、css的经典笔记
HTML语言剖析 Html简介-目录 全写: HyperText Mark-up Language 译名: 超文本标识语言 简释:一种为普通文件中某些字句加上标示的语言,其目的在于运用标签(tag ...
- Quartz2D 编程指南(一)概览、图形上下文、路径、颜色与颜色空间
概览 图形上下文 路径 颜色与颜色空间 变换 图案 阴影 渐变 透明层 Quartz 2D 中的数据管理 位图与图像遮罩 CoreGraphics 绘制 Layer 0.说明 本篇博客主要是对官方文档 ...
- C# 迪杰斯特拉算法 Dijkstra
什么也不想说,现在直接上封装的方法: using System; using System.Collections.Concurrent; using System.Collections.Gener ...
- xl2tp部署
参考 http://blog.51yip.com/linux/1795.html 说到VPN,就会想到google,满心的疼.以前写过一篇关于vpn的文单,请参考:centos5.5 vpn 安装配置 ...
- Android Activity 管理 (AppManager)(非原创)
AppManager 类: /** * 应用程序Activity管理类:用于Activity管理和应用程序退出 * */ public class AppManager { private ...
- 自由缩放属性resize
为了增强用户体验,CSS3增加了很多新的属性,其中resize就是一个重要的属性,它允许用户通过拖动的方式来修改元素的尺寸来改变元素的大小.到目前为止,可以使用overflow属性的任何容器元素. 在 ...
- Mysql 数据库中所有列名为某个值的 sql 语句
SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME IN ('columnname') AND T ...
- HTML5探秘:用requestAnimationFrame优化Web动画
本文转载自: HTML5探秘:用requestAnimationFrame优化Web动画