大神进去看看,初学,想控制翻页效果
大神进来看看,初学,想控制翻页效果!
public partial class Services : System.Web.UI.Page
{
public int count = 0;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string mys = "server=E_XUAN-PC;database=HotelDB;user id=sa;pwd=sasasa;Trusted_Connection=no";
SqlConnection conn = new SqlConnection(mys);
try
{
conn.Open();
string sql = "select top (5+'" + count + "') * from roomdb order by roomid";
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader read = cmd.ExecuteReader();
//for (int j = 0; j <= read.FieldCount; j++)
//{
// TableCell td2 = new TableCell();
// td2.Text = read.GetName(j).ToString();
// TableRow tr2 = new TableRow();
// tr2.Cells.Add(td2);
//}
for (int i = 0; i < count; i++)
{
read.Read();
}
while (read.Read())
{
TableRow tr1 = new TableRow();
for (int i = 0; i < read.FieldCount; i++)
{
TableCell td1 = new TableCell();
if (i != 0)
{
td1.Text = read[i].ToString();
}
else
{
td1.Text = "<a href ='xx.aspx?roomid' target='_blank'>" + read[i].ToString() + "</a>";
}
tr1.Cells.Add(td1);
}
Table1.Rows.Add(tr1);
}
}
catch
{
Response.Write("<script language=javascript>alert('数据库打开失败!');</script>");
}
finally
{
conn.Close();
}
}
}
public void LinkButton1_Click(object sender, EventArgs e)
{
if(count!=0)
count -= 5;
}
public void LinkButton2_Click(object sender, EventArgs e)
{
count += 5;
}
}
我想点击linkbutton1上页,linkbutton2下页,可是每次点击的时候就刷新页面了 不能实现count的增加 求帮忙
------解决思路----------------------
可以把count这个变量用session来代替,这样点击之后就能实现count的增加了,不过更推荐使用aspnetpager这个控件来实现翻页效果
------解决思路----------------------
可是每次点击的时候就刷新页面了 不能实现count的增加。
你点击的时候,页面上的URL应该是有一个参数“page”的,点击下一页,page的值从1变到2 。
然后你在页面后台接收这个参数,就可以实现 count 的增加了。
session 的用法:
保存值: session["你自己定义的名称"]="你要存进去的值";
取值:object xx=session["你自己定义的名称"]; (等号左边的类型自己根据需要可以换。)
public partial class Services : System.Web.UI.Page
{
public int count = 0;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string mys = "server=E_XUAN-PC;database=HotelDB;user id=sa;pwd=sasasa;Trusted_Connection=no";
SqlConnection conn = new SqlConnection(mys);
try
{
conn.Open();
string sql = "select top (5+'" + count + "') * from roomdb order by roomid";
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader read = cmd.ExecuteReader();
//for (int j = 0; j <= read.FieldCount; j++)
//{
// TableCell td2 = new TableCell();
// td2.Text = read.GetName(j).ToString();
// TableRow tr2 = new TableRow();
// tr2.Cells.Add(td2);
//}
for (int i = 0; i < count; i++)
{
read.Read();
}
while (read.Read())
{
TableRow tr1 = new TableRow();
for (int i = 0; i < read.FieldCount; i++)
{
TableCell td1 = new TableCell();
if (i != 0)
{
td1.Text = read[i].ToString();
}
else
{
td1.Text = "<a href ='xx.aspx?roomid' target='_blank'>" + read[i].ToString() + "</a>";
}
tr1.Cells.Add(td1);
}
Table1.Rows.Add(tr1);
}
}
catch
{
Response.Write("<script language=javascript>alert('数据库打开失败!');</script>");
}
finally
{
conn.Close();
}
}
}
public void LinkButton1_Click(object sender, EventArgs e)
{
if(count!=0)
count -= 5;
}
public void LinkButton2_Click(object sender, EventArgs e)
{
count += 5;
}
}
我想点击linkbutton1上页,linkbutton2下页,可是每次点击的时候就刷新页面了 不能实现count的增加 求帮忙
------解决思路----------------------
可以把count这个变量用session来代替,这样点击之后就能实现count的增加了,不过更推荐使用aspnetpager这个控件来实现翻页效果
------解决思路----------------------
可是每次点击的时候就刷新页面了 不能实现count的增加。
你点击的时候,页面上的URL应该是有一个参数“page”的,点击下一页,page的值从1变到2 。
然后你在页面后台接收这个参数,就可以实现 count 的增加了。
session 的用法:
保存值: session["你自己定义的名称"]="你要存进去的值";
取值:object xx=session["你自己定义的名称"]; (等号左边的类型自己根据需要可以换。)