0


GridView的绑定,添加,删除,更改;

GridView的绑定,添加,删除,更改;
在用GridView控件时候的操作如下
用的的数据库如下在这里插入图片描述

接下来是gridview的使用
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
前台代码如下

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="GridviewUserInfo.aspx.cs" Inherits="GridviewUserInfo"%><!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="gvStudent" runat="server" AutoGenerateColumns="False" Height="177px" Width="1056px" DataKeyNames="id" OnRowCancelingEdit="gvStudent_RowCancelingEdit" OnRowDeleting="gvStudent_RowDeleting" OnRowEditing="gvStudent_RowEditing" OnRowUpdating="gvStudent_RowUpdating" OnSelectedIndexChanged="gvStudent_SelectedIndexChanged"><Columns><asp:TemplateField HeaderText="学号"><EditItemTemplate><asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Id")%>'></asp:TextBox></EditItemTemplate><ItemTemplate><asp:Label ID="Label1" runat="server" Text='<%# Bind("Id")%>'></asp:Label></ItemTemplate></asp:TemplateField><asp:BoundField DataField="Name" HeaderText="姓名"/><asp:BoundField DataField="Sex" HeaderText="性别"/><asp:BoundField DataField="Age" HeaderText="年龄"/><asp:BoundField DataField="Address" HeaderText="地址"/><asp:CommandField ShowDeleteButton="True"/><asp:CommandField ShowEditButton="True"/></Columns></asp:GridView></div><br /><br /><div>
            姓名:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br />
            性别:<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox><br />
            年龄:<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox><br />
            地址:<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox><br /><asp:Button ID="btnSubmit" runat="server" Text="添加" OnClick="btnSubmit_Click"/></div></form></body></html>

后台代码如下

usingSystem;usingSystem.Collections.Generic;usingSystem.Data;usingSystem.Data.SqlClient;usingSystem.Linq;usingSystem.Web;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;/*
 绑定
1.数据库位置
2.数据库连接通道
3.找到表的位置,根据通道
4.创建数据集
5.把找到的表,放到数据集
6.将数据集放到数据源
7.将数据源绑定

添加
Button
1.获取要添加的内容
2.数据库位置
3.数据库连接通道
4.将获取要添加的内容添加到表里,根据通道
5.打开数据库
6.获取受影响行数
7.关闭数据库
8.判断是否成功
9.弹窗告诉是否成功
 

删除
删除事件
放入ID
1.数据库位置
2.数据库连接通道
3.获取受影响行数的id
4.SQL语句
5.将删除SQL语句放到表里,根据通道
5.打开数据库
6.获取受影响行数
7.关闭数据库
8.判断是否成功
9.弹窗告诉是否成功
 *//*
 SqlConnection  数据库连接对象
 SqlDataAdapter   数据填充器(数据适配器)
 DataSet        数据集(内存的表的集合)
 DataSource    数据源
 DataBind      数据绑定
 SqlCommand  数据库执行语句
 * ExecuteNonQuery获取受影响行数
 
选择:select * from table1 where 范围
插入:insert into table1(field1,field2) values(value1,value2)
删除:delete from table1 where 范围
更新:update table1 set field1=value1 where 范围
 */publicpartialclassGridviewUserInfo:System.Web.UI.Page{protectedvoidPage_Load(object sender,EventArgs e){if(!IsPostBack){StudentBind();}}/// <summary>/// GridView的数据绑定;/// </summary>//Student是数据库的名字string connStr ="Data Source=.;Initial Catalog=Student;Integrated Security=True";publicvoidStudentBind(){SqlConnection conn =newSqlConnection(connStr);//数据库的连接对象;string sql ="select * from StudentInfos";//sql语句从数据库里面查询数据;SqlDataAdapter sda =newSqlDataAdapter(sql,conn);//数据填充器;DataSet ds =newDataSet();//建立数据存放的容器
        sda.Fill(ds);//将数据放入到容器里面;
        gvStudent.DataSource = ds;//数据源
        gvStudent.DataBind();//数据的绑定;}protectedvoidbtnSubmit_Click(object sender,EventArgs e){//首先去掉前后的空格;Trim();string names = TextBox2.Text.Trim();string gender = TextBox3.Text.Trim();string ages = TextBox4.Text.Trim();string address1 = TextBox5.Text.Trim();SqlConnection conn =newSqlConnection(connStr);string sql ="insert into StudentInfos values('"+ names +"','"+ gender +"','"+ ages +"','"+ address1 +"')";SqlCommand cmd =newSqlCommand(sql, conn);
        conn.Open();int flag = cmd.ExecuteNonQuery();//获取受影响的行数;
        conn.Close();if(flag >0){StudentBind();
            Response.Write("<script>alert('添加成功')</script>");}else{
            Response.Write("<script>alert('添加失败')</script>");}}protectedvoidgvStudent_RowUpdating(object sender,GridViewUpdateEventArgs e){//这是指获取GridView1控件的第“e.RowIndex+1”行的第2列单元格内的第一个控件//e.RowIndex是指当前鼠标选中的行的序号,+1是因为数组的下标从0开始,0表示第1,1实际表示第2了string names =((TextBox)(this.gvStudent.Rows[e.RowIndex].Cells[1].Controls[0])).Text;string gender =((TextBox)(this.gvStudent.Rows[e.RowIndex].Cells[2].Controls[0])).Text;string ages =((TextBox)(this.gvStudent.Rows[e.RowIndex].Cells[3].Controls[0])).Text;string address1 =((TextBox)(this.gvStudent.Rows[e.RowIndex].Cells[4].Controls[0])).Text;//取出当前操作行的DataKeys对应的Names的IDint id = Convert.ToInt32(gvStudent.DataKeys[e.RowIndex]["id"]);string sql ="update StudentInfos set Name='"+ names+"',Sex='"+ gender+"',Age='"+ ages+"',Address='"+ address1+"'where Id='"+id+"'";SqlConnection conn =newSqlConnection(connStr);SqlCommand sda =newSqlCommand(sql, conn);
        conn.Open();int flag = sda.ExecuteNonQuery();
        conn.Close();if(flag >0){StudentBind();
            Response.Write("<script>alert('编辑成功')</script>");
            gvStudent.EditIndex =-1;}else{
            Response.Write("<script>alert('编辑失败')</script>");}}protectedvoidgvStudent_RowEditing(object sender,GridViewEditEventArgs e){//把当前编辑的索引,赋给控件的编辑索引,(让编辑的行显示出来)
        gvStudent.EditIndex = e.NewEditIndex;//绑定StudentBind();}protectedvoidgvStudent_RowDeleting(object sender,GridViewDeleteEventArgs e){//获取编辑行的id值int id = Convert.ToInt32(gvStudent.DataKeys[e.RowIndex]["id"]);SqlConnection conn =newSqlConnection(connStr);string sql ="delete from StudentInfos where Id='"+ id +"'";SqlCommand cmd =newSqlCommand(sql, conn);
        conn.Open();int flag = cmd.ExecuteNonQuery();
        conn.Close();if(flag >0){StudentBind();
            Response.Write("<script>alert('删除成功')</script>");}else{
            Response.Write("<script>alert('删除失败')</script>");}}protectedvoidgvStudent_RowCancelingEdit(object sender,GridViewCancelEditEventArgs e){//让编辑行的索引退回去
        gvStudent.EditIndex =-1;//绑定StudentBind();}protectedvoidgvStudent_SelectedIndexChanged(object sender,EventArgs e){}}

结果如下
在这里插入图片描述

标签: ui 数据库 c#

本文转载自: https://blog.csdn.net/m0_46454966/article/details/127315010
版权归原作者 繁花~筱敏 所有, 如有侵权,请联系我们删除。

“GridView的绑定,添加,删除,更改;”的评论:

还没有评论