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 ...
随机推荐
- C学习笔记 知识集锦(二)
1. 数组和指针 2. 字符串赋值 3. memset&memcpy 4. 机器数和真值,原码,反码和补码 5. 文件指针和文件描述符 6. 内存泄露和内存损坏 7. 什么是不可移植的程序 ...
- JS中isPrototypeOf 和hasOwnProperty 的区别 ------- js使用in和hasOwnProperty获取对象属性的区别
JS中isPrototypeOf 和hasOwnProperty 的区别 1.isPrototypeOf isPrototypeOf是用来判断指定对象object1是否存在于另一个对象object2的 ...
- GPS部标平台的架构设计(四)-百度地图设计
部标GPS软件平台之百度地图设计 地图是客户端中不可缺少的一个模块,很多人在设计和画图时候,喜欢加上地图引擎这样高大上的字眼,显得自己的平台有内涵,说白了就是用第三方的SDK来开发,早期的GPS监 控 ...
- adminLTE的自动化菜单
一. model from django.db import models # Create your models here. class MenuInfo(models.Model): paren ...
- JSON.stringify////////////////////////////////zzzzzzzzzzzzzz
JSON.stringify 语法实例讲解 可能有些人对系列化这个词过敏,我的理解很简单.就是说把原来是对象的类型转换成字符串类型(或者更确切的说是json类型的).就这么简单.打个比方说,你有一个类 ...
- Python学习第一天 -- 简单的属性、 语法学习
1,哈哈哈,是时候来一波Python,其实没办法,最近在做后台的时候,需要用到Python来调试接口,下面是它的简单的语法,权当是记录. 2, #!/user/bin/python # coding= ...
- 夺命雷公狗-----React_native---3---react-native-cli的安装
我们用npm安装下react-native-cli,并用-g来全局安装,我们用命令 npm install -g react-native-cli 如果和下图一样即表示已安装成功:
- Python字符串格式化
一.使用格式化符来格式化字符串: Python支持的所有格式化符 格式化符 意义 'd' 返回要格式化对象的十进制表示,如果可以 'i' 返回要格式化对象的十进制表示,如果可以 'o' 返回要格式化对 ...
- html5,表单的综合案例
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
- (一)sql入门 导读
从转行做软件始,就开始接触sql,但还是不怎么深入,回忆3月份找工作的时候,左关联都没有写出来,真是丢脸,以此博客做个认真的开始. 以后的日子,遇到了圆柱体的空心物体,我就应该联想到一样东西,那就是数 ...