using System;
using System.
Data;
using System.
Data.SqlClient;
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;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
DataColumn dc;
DataRow dr;
//---------------------添加字段----------------
//建立字段1
dc = new DataColumn();
dc.DataType = System.Type.GetType("System.Int32");
dc.ColumnName = "id";
dc.AutoIncrement = true;//标识
dc.AutoIncrementSeed = 1;//标识种子
dc.AutoIncrementStep = 1;//标识递增量
dt.Columns.Add(dc);
//建立字段2
dc = new DataColumn();
dc.DataType = System.Type.GetType("System.String");
dc.ColumnName = "sitename";
dc.AllowDBNull = true;
dt.Columns.Add(dc);
//建立字段3
dc = new DataColumn();
dc.DataType = System.Type.GetType("System.String");
dc.ColumnName = "url";
dc.AllowDBNull = true;
dt.Columns.Add(dc);
//设置主键
DataColumn[] newdc = new DataColumn[1];//可设置多个字段为主键
newdc[0] = dt.Columns["id"];
dt.PrimaryKey = newdc;
//---------------------添加记录----------------
//记录1
dr = dt.NewRow();
dr["sitename"] = "尚网";
dr["url"] = "http://www.jjshang.com/";
dt.Rows.Add(dr);
//记录2
dr = dt.NewRow();
dr["sitename"] = "木子屋";
dr["url"] = "http://www.mzwu.com/";
dt.Rows.Add(dr);
//记录3
dr = dt.NewRow();
dr["sitename"] = "网易";
dr["url"] = "http://www.126.com/";
dt.Rows.Add(dr);
//----把表添加到DataSet并绑定到DataList----
ds.Tables.Add(dt);
ds.Tables[0].TableName = "HomePage";
Session["ds"] = ds;
BindData();
}
}
private void BindData()
{
((DataSet)Session["ds"]).Tables["HomePage"].DefaultView.Sort = "id desc";
DataList1.DataSource = ((DataSet)Session["ds"]).Tables["HomePage"].DefaultView;
DataList1.DataBind();
}
protected void DataList1_Cancel(object source, DataListCommandEventArgs e)
{
DataList1.EditItemIndex = -1;
BindData();
}
protected void DataList1_Delete(object source, DataListCommandEventArgs e)
{
int id = (int)DataList1.DataKeys[e.Item.ItemIndex];
DataRow dr = ((DataSet)Session["ds"]).Tables["HomePage"].Rows[GetRow(id)];
dr.Delete();
DataList1.EditItemIndex = -1;
BindData();
}
protected void DataList1_Edit(object source, DataListCommandEventArgs e)
{
DataList1.EditItemIndex = e.Item.ItemIndex;
BindData();
}
protected void DataList1_Update(object source, DataListCommandEventArgs e)
{
string sitename = ((TextBox)e.Item.FindControl("TextBox1")).Text;
string url = ((TextBox)e.Item.FindControl("TextBox2")).Text;
int id = (int)DataList1.DataKeys[e.Item.ItemIndex];
DataRow dr = ((DataSet)Session["ds"]).Tables["HomePage"].Rows[GetRow(id)];
dr["sitename"] = sitename;
dr["url"] = url;
DataList1.EditItemIndex = -1;
BindData();
}
private int GetRow(int id)
{
DataRow dr;
for (int i = 0; i < ((DataSet)Session["ds"]).Tables["HomePage"].Rows.Count; i++)
{
dr = ((DataSet)Session["ds"]).Tables["HomePage"].Rows[i];
if ((int)dr["id"] == id) return i;
}
return 0;
}
}