分页以后GriView查询问题
用GridView 显示信息和分页,可以通过DropDownList查询后显示的信息分页会显示所有信息,想显示查询的信息必须重新点击查询按钮查询后再点击分页,然后就会显示所有信息,想看第二页就需要再点查询
我点查询按钮只能查询当前页的信息
到第二页或其他页的时候还得按查询按钮
我想一次性把 分页后的所有信息都查出来
protected void btnFind_Click(object sender, EventArgs e)
{
FenYeMethod();
}
private void FenYeMethod()
{
string keyWord = this.txtKeyWord.Text;
if ("".Equals(keyWord))
{
Response.Write("<script language=javascript>alert('关键字不能为空!');location='SendNote.aspx'</script>");
return;
}
string type = this.dropClass.SelectedValue;
this.GridView1.DataSource = SendManManager.LikeSelectSendManInfo(type, keyWord);
this.GridView1.DataBind();
}
public static IList<SendMan> LikeSelectSendManInfo(string type, string keyWord)
{
return sendManService.LikeSelectSendManInfo(type, keyWord);
}
}
public IList<SendMan> LikeSelectSendManInfo(string type, string keyWord)
{
if ("客户地址".Equals(type) && !("".Equals(keyWord)))
{
string sqlByID = "Select * From tb_SendMan Where ClientAddress Like '%" + keyWord + "%'";
return Fun(sqlByID);
}
else if ("客户名称".Equals(type) && !("".Equals(keyWord)))
{
string sqlByClientName = "Select * From tb_SendMan Where ClientName Like '%" + keyWord + "%'";
return Fun(sqlByClientName);
}
else if ("服务员工".Equals(type) && !("".Equals(keyWord)))
{
string sqlByServicePerson = "Select * From tb_SendMan Where ServicePerson Like '%" + keyWord + "%'";
return Fun(sqlByServicePerson);
}
else
{
return null;
}
}
private IList<SendMan> Fun(string sql)
{
SqlDataReader reader = null;
IList<SendMan> sendManList = new List<SendMan>();
try
{
reader = DbHelper.ExecuteReader(sql);
while (reader.Read())
{
SendMan sendMan = new SendMan();
sendMan.ClientAddress = reader["ClientAddress"].ToString();
sendMan.ClientEmail = reader["ClientEmail"].ToString();
sendMan.ClientName = reader["ClientName"].ToString();
sendMan.NoticeContent = reader["NoticeContent"].ToString();
sendMan.EndTime = Convert.ToDateTime(reader["EndTime"].ToString());
sendMan.PhoneAbout = reader["PhoneAbout"].ToString();
sendMan.PostCode = reader["PostCode"].ToString();
sendMan.ServicePerson = reader["ServicePerson"].ToString();
sendMan.DepName = reader["DepName"].ToString();
sendMan.PlanTime = reader["PlanTime"].ToString();
sendMan.StartTime = Convert.ToDateTime(reader["StartTime"].ToString());
sendMan.ID = Convert.ToInt32(reader["ID"]);
sendManList.Add(sendMan);
}
reader.Close();
reader.Dispose();
return sendManList;
}
catch (Exception e)
{
Console.WriteLine(e.Message.ToString());
reader.Close();
reader.Dispose();
return null;
}
}
从上到下依次调用
用PageIndexChanged方法可以办到吗?
protected void GridView1_PageIndexChanged(object sender, EventArgs e)
{
FenYeMethod();
}
--------------------编程问答-------------------- 看前面的代码有点头晕,呵呵,看来自己还需要加倍努力啊,LZ的问题还真是千奇百怪.... --------------------编程问答-------------------- viewstate保存查询条件 --------------------编程问答-------------------- 直接搞个分页存储过程就ok了 --------------------编程问答-------------------- VIEWSTATE保存查询 --------------------编程问答-------------------- 楼主 记得要加注释~~~ --------------------编程问答-------------------- 把查询变量定义成全局的。
补充:.NET技术 , ASP.NET