GridViewUp.aspx文件代码: <% @ Page Language = " C# " AutoEventWireup = " true " CodeFile = " GridViewUp.aspx.cs " Inherits = " gridview_GridViewUp " %> <! 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 > < table cellpadding = " 0 " cellspacing = " 0 " border = " 0 " width = " 80% " style = " font-size: 11px " > < tr > < td align = " center " > < asp:GridView ID = " GridView1 " runat = " server " Width = " 100% " CellPadding = " 4 " ForeColor = " #333333 " AutoGenerateColumns = " False " AllowPaging = " True " PageSize = " 12 " OnRowCancelingEdit = " GridView1_RowCancelingEdit " OnRowEditing = " GridView1_RowEditing " OnRowUpdating = " GridView1_RowUpdating " OnRowDeleting = " GridView1_RowDeleting " DataKeyNames = " id,name " OnPageIndexChanging = " GridView1_PageIndexChanging " DataMember = " card,price " OnRowDataBound = " GridView1_RowDataBound " GridLines = " None " > < Columns > < asp:BoundField HeaderText = " 编号 " DataField = " id " ReadOnly = " True " /> < asp:BoundField DataField = " name " HeaderText = " 姓名 " ReadOnly = " True " /> < asp:TemplateField HeaderText = " 身份证号 " > < ItemTemplate > <% # Eval( " card " ) %> </ ItemTemplate > < EditItemTemplate > < asp:TextBox ID = " TBCard " Text = ' <%# Eval("card") %> ' runat = " server " Width = " 140px " /> </ EditItemTemplate > < ItemStyle Width = " 150px " /> </ asp:TemplateField > < asp:TemplateField HeaderText = " 学历 " > < ItemTemplate > <% # Eval( " xueliText " ) %> </ ItemTemplate > < EditItemTemplate > < asp:HiddenField ID = " HDFXueli " runat = " server " Value = ' <%# Eval("xueli") %> ' /> < asp:DropDownList ID = " DDLXueli " runat = " server " Width = " 90px " /> </ EditItemTemplate > < ItemStyle Width = " 100px " /> </ asp:TemplateField > < asp:TemplateField HeaderText = " 价格 " > < ItemTemplate > <% # Eval( " price " ) %> </ ItemTemplate > < EditItemTemplate > < asp:TextBox ID = " TBPrice " Text = ' <%# Eval("price") %> ' runat = " server " Width = " 90px " /> </ EditItemTemplate > < ItemStyle Width = " 100px " /> </ asp:TemplateField > < asp:BoundField HeaderText = " 建立时间 " DataField = " createdate " ReadOnly = " True " /> < asp:CommandField ShowDeleteButton = " True " ShowEditButton = " True " HeaderText = " 操作 " /> </ Columns > < PagerSettings FirstPageText = "" LastPageText = "" NextPageText = "" PreviousPageText = "" /> < RowStyle Height = " 20px " BackColor = " #F7F6F3 " ForeColor = " #333333 " /> < FooterStyle BackColor = " #5D7B9D " Font - Bold = " True " ForeColor = " White " /> < EditRowStyle BackColor = " #999999 " /> < SelectedRowStyle BackColor = " #E2DED6 " Font - Bold = " True " ForeColor = " #333333 " /> < PagerStyle BackColor = " #284775 " ForeColor = " White " HorizontalAlign = " Center " /> < HeaderStyle BackColor = " #5D7B9D " Font - Bold = " True " ForeColor = " White " /> < AlternatingRowStyle BackColor = " White " ForeColor = " #284775 " /> </ asp:GridView > </ td > </ tr > </ table > </ div > </ form > </ body > </ html > GridViewUp.aspx.cs文件代码: using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; public partial class gridview_GridViewUp : System.Web.UI.Page ... { protected void Page_Load(object sender, EventArgs e) ...{ if (!IsPostBack) ...{ GridViewBind(); } } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) ...{ GridView1.PageIndex = e.NewPageIndex; GridViewBind(); } private void GridViewBind() ...{ string connStr = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString; string SqlStr = "SELECT *,case xueli when '1' then '博士' when '2' then '硕士' when '3' then '学士' else '' end as xueliText FROM test01 where id<1000 and id>200"; DataSet ds = new DataSet(); try ...{ SqlConnection conn = new SqlConnection(connStr); if (conn.State.ToString() == "Closed") conn.Open(); SqlDataAdapter da = new SqlDataAdapter(SqlStr, conn); da.Fill(ds, "test01"); if (conn.State.ToString() == "Open") conn.Close(); GridView1.DataSource = ds.Tables[0].DefaultView; GridView1.DataBind(); } catch (Exception ex) ...{ Response.Write("数据库错误,错误原因:" + ex.Message); Response.End(); } } protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) ...{ if (((DropDownList)e.Row.FindControl("DDLXueli")) != null) ...{ DropDownList ddlxueli = (DropDownList)e.Row.FindControl("DDLXueli"); // 生成 DropDownList 的值,也可以取得数据库中的数据绑定 ddlxueli.Items.Clear(); ddlxueli.Items.Add(new ListItem("博士", "1")); ddlxueli.Items.Add(new ListItem("硕士", "2")); ddlxueli.Items.Add(new ListItem("学士", "3")); // // 选中 DropDownList ddlxueli.SelectedValue = ((HiddenField)e.Row.FindControl("HDFXueli")).Value; // } } protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) ...{ GridView1.EditIndex = e.NewEditIndex; GridViewBind(); } protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) ...{ GridView1.EditIndex = -1; GridViewBind(); } protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) ...{ string id = GridView1.DataKeys[e.RowIndex].Values[0].ToString(); string card = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TBCard")).Text; string xueli = ((DropDownList)GridView1.Rows[e.RowIndex].FindControl("DDLXueli")).SelectedValue; string price = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TBPrice")).Text; string connStr = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString; string SqlStr = "update test01 set card='" + card + "',xueli='" + xueli + "',price='" + price + "' where id=" + id; try ...{ SqlConnection conn = new SqlConnection(connStr); if (conn.State.ToString() == "Closed") conn.Open(); SqlCommand comm = new SqlCommand(SqlStr, conn); comm.ExecuteNonQuery(); comm.Dispose(); if (conn.State.ToString() == "Open") conn.Close(); GridView1.EditIndex = -1; GridViewBind(); } catch (Exception ex) ...{ Response.Write("数据库错误,错误原因:" + ex.Message); Response.End(); } } protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) ...{ string id = GridView1.DataKeys[e.RowIndex].Values[0].ToString(); string connStr = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString; string SqlStr = "delete from test01 where id=" + id; try ...{ SqlConnection conn = new SqlConnection(connStr); if (conn.State.ToString() == "Closed") conn.Open(); SqlCommand comm = new SqlCommand(SqlStr, conn); comm.ExecuteNonQuery(); comm.Dispose(); if (conn.State.ToString() == "Open") conn.Close(); GridView1.EditIndex = -1; GridViewBind(); } catch (Exception ex) ...{ Response.Write("数据库错误,错误原因:" + ex.Message); Response.End(); } }}