简单-三层-存储过程-增删改<二>
第二,喜欢听彩虹,张惠妹!
数据库连接成功!开始绑定数据!
一,添加一个gridview控件.

点编辑列,去掉自动生成列前面的对勾.然后添加3列,如图:

二,后台页面的代码:
using System;
using System.Data;
using System.Configuration;
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 _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection("server=.;database=cs;uid=sa;pwd=sa");
//try { conn.Open(); if (conn.State == ConnectionState.Open) { Response.Write("数据库连接成功!"); } }
//catch (Exception ee) { Response.Write(ee.Message); }
//finally { conn.Close(); }
conn.Open();
string sql_str = "select * from uer";
SqlDataAdapter da = new SqlDataAdapter(sql_str, conn);
DataSet ds = new DataSet();
da.Fill(ds,"uer");
Gridview1.DataSource = ds;
Gridview1.DataBind();
}
}
此时,数据依然不能显示,因为前台对应字段还没有绑定.
三,编辑模板,添加lable,和textbox.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" Debug="true"%>
<!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>
<asp:gridview ID="Gridview1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField HeaderText="ID">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="用户名">
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="密码">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text="Label"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:gridview>
</div>
</form>
</body>
</html>
现在改变Text,Text='<%#Bind("id") %>'等等.

绑定成功,下面添加删除,修改列.
添加
<asp:TemplateField HeaderText="修改">
<EditItemTemplate>
<asp:LinkButton ID="LinkButton2" runat="server">更新</asp:LinkButton>||<asp:LinkButton
ID="LinkButton3" runat="server">取消</asp:LinkButton>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="LinkButton4" runat="server">修改</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="删除">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server">删除</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
这里只是添加了.具体功能的实现还要添加到下面.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="index.aspx.cs" Inherits="index" %>
<!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>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px"
CellPadding="3" Height="56px" Width="426px"
onrowediting="GridView1_RowEditing"
onrowcancelingedit="GridView1_RowCancelingEdit"
onrowupdating="GridView1_RowUpdating"
onrowdeleting="GridView1_RowDeleting">
<Columns>
<asp:TemplateField HeaderText="ID号">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%#Bind("id")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="用户名">
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%#Bind("txtuser")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="密码">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("txtpassword") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%#Bind("txtpassword")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="修改">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="edit" >修改</asp:LinkButton>
</ItemTemplate>
<EditItemTemplate>
<asp:LinkButton ID="LinkButton2" runat="server" CommandName="update">更新</asp:LinkButton>
||<asp:LinkButton ID="LinkButton3" runat="server" CommandName="cancel">取消</asp:LinkButton>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="删除">
<ItemTemplate>
<asp:LinkButton ID="LinkButton4" runat="server" CommandName="delete">删除</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="White" ForeColor="#000066" />
<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
<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>
</div>
</form>
</body>
</html>
后面代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
using System.Xml;
public partial class index : System.Web.UI.Page
{
public static string aa;
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
dvDataBind();
}
}
private void dvDataBind()
{
//SqlConnection conn = new SqlConnection("server=.;database=cs;uid=sa;pwd=");
//SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
//SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["ConnectionString"].ToString());
XmlDocument xDoc = new XmlDocument();
xDoc.Load(Server.MapPath("XMLFile.xml"));
//SqlConnection conn = new SqlConnection(xDoc.SelectSingleNode("PrintSetting/SQL_CONN").InnerText);
XmlNodeList nodes1 = xDoc.GetElementsByTagName("PrintSettings");
foreach (XmlNode node1 in nodes1) //第一层
{
//TextBox1.Text = node1.ToString();
if (node1.Attributes["name"].Value == "zong")
{
XmlNodeList nodes2 = node1.ChildNodes;
foreach (XmlNode node2 in nodes2)//第二层nodes1
{
if (node2.Attributes["name"].Value == "1")
{
aa = node2["SQL_CONN"].InnerText;
//TextBox1.Text = aa;
}
}
}
}
SqlConnection conn = new SqlConnection(aa);
conn.Open();
string sql_string = "select * from login_user";
SqlDataAdapter da = new SqlDataAdapter(sql_string, conn);
DataSet ds = new DataSet();
da.Fill(ds, "login_user");
GridView1.DataSource = ds;
GridView1.DataBind();
}
//编辑
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
dvDataBind();
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
TextBox txt_temp_description = (TextBox)GridView1.Rows[e.RowIndex].FindControl("textbox1");
SqlConnection conn = new SqlConnection("server=.;database=cs;uid=sa;pwd=");
conn.Open();
SqlCommand cmd = new SqlCommand("update login_user set txtpassword='" + txt_temp_description.Text + "' where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'", conn);
cmd.ExecuteNonQuery();
conn.Close();
GridView1.EditIndex = -1;
dvDataBind();
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
dvDataBind();
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
string sqlstr = "delete from login_user where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";
SqlConnection conn = new SqlConnection("server=.;database=cs;uid=sa;pwd=");
conn.Open();
SqlCommand cmd = new SqlCommand(sqlstr, conn);
cmd.ExecuteNonQuery();
dvDataBind();
}
}
至此,Gridview的修改,删除功能完全实现!
浙公网安备 33010602011771号