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 ...
随机推荐
- [原创]-bash: iostat: command not found解决办法
[root@testhost ~]# iostat-bash: iostat: command not found IOSTAT 命令不可用,首先确认sysstat包是否安装,sysstat包中包括i ...
- MWeb 1.4 新功能介绍一:引入文件夹到 MWeb 中管理,支持 Octpress、Jekyll 等静态博客拖拽插入图片和实时预览
之前在 MWeb 中打开非文档库中的 Markdown 文档,如果文档中有引用到本机图片,是没办法在 MWeb 中显示出来和预览的.这是因为 Apple 规定在 Mac App Store(MAS) ...
- matlab中patch函数的用法
http://blog.sina.com.cn/s/blog_707b64550100z1nz.html matlab中patch函数的用法——emily (2011-11-18 17:20:33) ...
- STL-<queue>-priority queue的使用
简介: 优先队列是一种容器适配器,优先队列的第一个元素总是最大或最小的(自定义的数据类型需要重载运算符).它是以堆为基础实现的一种数据结构. 成员函数(Member functions) (const ...
- Java 之 List<T> 接口的实现:ArrayList
Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMap ArrayLis ...
- 【译】Import Changes from Direct3D 11 to Direct3D 12
译者:林公子 出处:木木的二进制人生 转载请注明作者和出处,谢谢! 这是微软公布的Direct3D 12文档的其中一篇,此翻译留作学习记录备忘,水平有限,错漏难免,还望海涵. 原文链接是https:/ ...
- Python数据结构与算法设计总结篇
1.Python数据结构篇 数据结构篇主要是阅读[Problem Solving with Python]( http://interactivepython.org/courselib/static ...
- Java面试宝典系列之基础排序算法
本文就是介绍一些常见的排序算法.排序是一个非常常见的应用场景,很多时候,我们需要根据自己需要排序的数据类型,来自定义排序算法,但是,在这里,我们只介绍这些基础排序算法,包括:插入排序.选择排序.冒泡排 ...
- ios 使用AFN上传图片到服务器
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; manager.responseSe ...
- 让C#轻松实现读写锁分离
ReaderWriterLockSlim 类 表示用于管理资源访问的锁定状态,可实现多线程读取或进行独占式写入访问. 使用 ReaderWriterLockSlim 来保护由多个线程读取但每次只采用一 ...