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 ...
随机推荐
- a 添加href后当前栏目如何高亮显示
//nav $(".nav li a").each(function() { $this = $(this); if ($this[0].href == String(window ...
- 大气散射的demo
- JSON--JavaScript Object Notation
概念 一种轻量级的数据交换格式,本质是特定格式的字符串,是客户端和服务器端交互数据的常用选择 规则 []集合 [value1,value2] {}对象 {key1:value1,key2,value2 ...
- 代码审计之SQL注入
0x00概况说明 0x01报错注入及利用 环境说明 kali LAMP 0x0a 核心代码 现在注入的主要原因是程序员在写sql语句的时候还是通过最原始的语句拼接来完成,另外SQL语句有Select. ...
- phpstorm git no changes detected
没有检测到的原因是符号链接了另一个 git 导致有两个git,这个时候应该排除掉其中一个.
- java布局学习 (三)
前文已经讲了常用的4个布局了,今天再介绍最后的三个布局: 5.CardLayout 6.BoxLayout 7.空白布局null (五)CardLayout 纸牌布局 首先这种布局不是二维布局,而 ...
- qt qml ajax 获取 json 天气数据示例
依赖ajax.js类库,以下代码很简单的实现了获取天气json数据并展示的任务 [TestAjax.qml] import QtQuick 2.0 import "ajax.js" ...
- logstash输出到influxdb
用了这个logstash扩展 https://github.com/PeterPaulH/logstash-influxdb/blob/master/src/influxdb.rb 把这个文件放到 l ...
- presto的动态化应用(一):presto节点的横向扩展与伸缩
一.presto动态化概述 近年来,基于hadoop的sql框架层出不穷,presto也是其中的一员.从2012年发展至今,依然保持年轻的活力(版本迭代依然很快),presto的相关介绍,我们就不赘述 ...
- Oracle学习笔记(1)----忘记用户名的密码该如何找回
(1)在连接数据库之前需要打开如下服务: (2)如果忘记用户的密码 I:打开cmd窗口 II:键入命令:connect / as sysdba; III:alter user 用户名 identifi ...