c#代码:
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)
{
if (!this.IsPostBack)
{
BindGrid();
}
}
private DataTable ReadGridView()
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("ProductID", typeof(string)));
dt.Columns.Add(new DataColumn("ProductName", typeof(string)));
dt.Columns.Add(new DataColumn("CategoryID", typeof(string)));
for (int i = 0; i < this.GridView1.Rows.Count; i++)
{
dr = dt.NewRow();
dr[0] = this.GridView1.Rows[i].Cells[0].Text.Trim();
dr[1] = this.GridView1.Rows[i].Cells[1].Text.Trim();
dr[2] = this.GridView1.Rows[i].Cells[2].Text.Trim();
dt.Rows.Add(dr);
}
return dt;
}
protected void Button1_Click(object sender, EventArgs e)
{
DataTable dt = ReadGridView();
//this.GridView1.DataSource = dt;
//this.GridView1.DataBind();
DataRow row = dt.NewRow();
row.ItemArray = new object[]
{ "oec2003","oec2003","oec2003" };
dt.Rows.InsertAt(row, 0);
dt.AcceptChanges();
this.GridView1.DataSource = dt;
this.GridView1.DataBind();
}
private void BindGrid()
{
string str = ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ToString();
using (SqlConnection con = new SqlConnection(str))
{
SqlCommand cmd = new SqlCommand("SELECT top 1 [ProductID], [ProductName], [CategoryID] FROM [Products]", con);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
sda.Fill(ds);
this.GridView1.DataSource = ds.Tables[0].DefaultView;
this.GridView1.DataBind();
sda.Dispose();
ds.Dispose();
}
}
}
html代码
<%
@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"
%>

<!
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:Button
ID
="Button1"
runat
="server"
OnClick
="Button1_Click"
Text
="Button"
/>
<
asp:GridView
ID
="GridView1"
runat
="server"
AutoGenerateColumns
="False"
DataKeyNames
="ProductID"
>
<
Columns
>
<
asp:BoundField
DataField
="ProductID"
HeaderText
="ProductID"
InsertVisible
="False"
ReadOnly
="True"
SortExpression
="ProductID"
/>
<
asp:BoundField
DataField
="ProductName"
HeaderText
="ProductName"
SortExpression
="ProductName"
/>
<
asp:BoundField
DataField
="CategoryID"
HeaderText
="CategoryID"
SortExpression
="CategoryID"
/>
</
Columns
>
</
asp:GridView
>
</
div
>
</
form
>
</
body
>
</
html
>
数据库连接字串
<
connectionStrings
>
<
add
name
="NorthwindConnectionString"
connectionString
="Data Source=FENGWEI;Initial Catalog=Northwind;User ID=sa;Password=1234"
providerName
="System.Data.SqlClient"
/>
</
connectionStrings
>
本文介绍了一个使用C#实现的ASP.NET网页应用程序案例,该程序通过GridView控件展示数据库查询结果,并提供了按钮用于向GridView中添加新行。文章详细展示了如何从GridView读取数据到DataTable中,以及如何向DataTable添加新行并更新GridView。
3245

被折叠的 条评论
为什么被折叠?



