手动绑定数据到GridView并实现编辑,删除,取消···

原文地址为: 手动绑定数据到GridView并实现编辑,删除,取消···

效果图:

前台代码:

<% @ Page Language = " C# "  AutoEventWireup = " true "  CodeFile = " Default5.aspx.cs "  Inherits = " Default5 "   %>

<! DOCTYPE html PUBLIC  " -//W3C//DTD XHTML 1.0 Transitional//EN "   " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >

< html xmlns = " http://www.w3.org/1999/xhtml " >
< head runat = " server " >
    
< title > 无标题页 </ title >
</ head >
< body >
    
< form id = " form1 "  runat = " server " >
    
< div align = " center " >
    
        
< asp:GridView ID = " GridView1 "  runat = " server "  AutoGenerateColumns = " False "  
            CellPadding
= " 4 "  ForeColor = " #333333 "  GridLines = " None "  Height = " 285px "  
            onrowcancelingedit
= " GridView1_RowCancelingEdit "  
            onrowdeleting
= " GridView1_RowDeleting "  onrowediting = " GridView1_RowEditing "  
            onrowupdating
= " GridView1_RowUpdating "  Width = " 771px " >
            
< FooterStyle BackColor = " #5D7B9D "  Font - Bold = " True "  ForeColor = " White "   />
            
< RowStyle BackColor = " #F7F6F3 "  ForeColor = " #333333 "   />
            
< Columns >
                
< asp:BoundField DataField = " id "  HeaderText = " 学号 "   />
                
< asp:BoundField DataField = " name "  HeaderText = " 姓名 "   />
                
< asp:BoundField DataField = " sex "  HeaderText = " 性别 "   />
                
< asp:BoundField DataField = " age "  HeaderText = " 年龄 "   />
                
< asp:BoundField DataField = " department "  HeaderText = " 专业 "   />
                
< asp:BoundField DataField = " grade "  HeaderText = " 班级 "   />
                
< asp:CommandField HeaderText = " 编辑  "  ShowEditButton = " True "   />
                
< asp:CommandField HeaderText = " 选择 "  ShowSelectButton = " True "   />
                
< asp:TemplateField HeaderText = " 删除  "  ShowHeader = " False " >
                    
< ItemTemplate >
                        
< asp:LinkButton ID = " LinkButton1 "  runat = " server "  CausesValidation = " False "  
                            CommandName
= " Delete "  Text = " 删除 "  OnClientClick = " return confirm('你确定要删除吗?') " ></ asp:LinkButton >
                    
</ ItemTemplate >
                
</ asp:TemplateField >
            
</ Columns >
            
< PagerStyle BackColor = " #284775 "  ForeColor = " White "  HorizontalAlign = " Center "   />
            
< SelectedRowStyle BackColor = " #E2DED6 "  Font - Bold = " True "  ForeColor = " #333333 "   />
            
< HeaderStyle BackColor = " #5D7B9D "  Font - Bold = " True "  ForeColor = " White "   />
            
< EditRowStyle BackColor = " #999999 "   />
            
< AlternatingRowStyle BackColor = " White "  ForeColor = " #284775 "   />
        
</ asp:GridView >
    
    
</ div >
    
</ form >
</ body >
</ html >

后台代码:
using  System;
using  System.Collections;
using  System.Configuration;
using  System.Data;
using  System.Web;
using  System.Web.Security;
using  System.Web.UI;
using  System.Web.UI.HtmlControls;
using  System.Web.UI.WebControls;
using  System.Web.UI.WebControls.WebParts;
using  System.Data.SqlClient;

public   partial   class  Default5 : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
if (!IsPostBack)
        
{
            Bind();
        }

    }


    
private void Bind()
    
{
        SqlConnection conn 
= new SqlConnection(ConfigurationManager.ConnectionStrings["Personal"].ConnectionString);
        SqlDataAdapter adq 
= new SqlDataAdapter("select * from information", conn);
        DataSet dataset
=new DataSet();
        adq.Fill(dataset,
"information");
        GridView1.DataSource
=dataset;
        GridView1.DataKeyNames
=new String[]{"id"};
        GridView1.DataBind();
    }

    
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    
{
        GridView1.EditIndex 
= e.NewEditIndex;
        Bind();
    }

    
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    
{
        SqlConnection conn 
= new SqlConnection(ConfigurationManager.ConnectionStrings["Personal"].ConnectionString);
        SqlCommand comm 
= new SqlCommand("delete from information where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'",conn);
        conn.Open();
        
try
        
{
            
int i = Convert.ToInt32(comm.ExecuteNonQuery());
            
if (i > 0)
            
{
                Response.Write(
"<script language=javascript>alert('删除成功!')</script>");
            }

            
else
            
{
                Response.Write(
"<script language=javascript>alert('删除失败!')</script>");
            }

            Bind();
        }

        
catch (Exception erro)
        
{
            Response.Write(
"错误信息:"+erro.Message);
        }

        
finally
        
{
            conn.Close();
        }

    }

    
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    
{
        
string id = ((TextBox)GridView1.Rows[e.RowIndex].Cells[0].Controls[0]).Text.ToString().Trim();
        
string name = ((TextBox)GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString().Trim();
        
string sex = ((TextBox)GridView1.Rows[e.RowIndex].Cells[2].Controls[0]).Text.ToString().Trim();
        
string age= ((TextBox)GridView1.Rows[e.RowIndex].Cells[3].Controls[0]).Text.ToString().Trim();
        
string department = ((TextBox)GridView1.Rows[e.RowIndex].Cells[4].Controls[0]).Text.ToString().Trim();
        
string grade = ((TextBox)GridView1.Rows[e.RowIndex].Cells[5].Controls[0]).Text.ToString().Trim();
        SqlConnection conn 
= new SqlConnection(ConfigurationManager.ConnectionStrings["Personal"].ConnectionString);
        SqlCommand comm 
= new SqlCommand("update information set id='"+id+"', name='"+name+"' , sex='"+sex+"' , age='"+age+"' , department='"+department+"' , grade='"+grade+"' where id='"+GridView1.DataKeys[e.RowIndex].Value.ToString()+"'", conn);
        conn.Open();
        
try
        
{
            
int i = Convert.ToInt32(comm.ExecuteNonQuery());
            
if (i > 0)
            
{
                Response.Write(
"<script language=javascript>alert('保存成功!')</script>");
            }

            
else
            
{
                Response.Write(
"<script language=javascript>alert('保存失败!')</script>");
            }

            GridView1.EditIndex 
= -1;
            Bind();
        }

        
catch (Exception erro)
        
{
            Response.Write(
"错误信息:" + erro.Message);
        }

        
finally
        
{
            conn.Close();
        }

    }

    
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    
{
        GridView1.EditIndex 
= -1;
        Bind();
    }

}


转载请注明本文地址: 手动绑定数据到GridView并实现编辑,删除,取消···

猜你喜欢

转载自blog.csdn.net/w36680130/article/details/81452520