问题内容--提问时间:2008-8-20 11:04:06
这个例子是根据查询条件生成数据源绑定到gridview上,然后将gridview的allowpaging 设置为 true ,
像这样的情况如何实现分页,错误代码提示为:"激发了未处理的事件"PageIndexChanging。
下面是cs中数据绑定的后台代码:
protected void MyDataBind(string sqlstring)
{
OleDbConnection objConnection = new OleDbConnection(CONN_STRING_NON_DTC); //建立数据链接对象objConnection
OleDbDataAdapter adapter = new OleDbDataAdapter(); //创建OleDbDataAdapter对象
DataSet dataset = new DataSet(); //创建DataSet对象
try
{
objConnection.Open();//打开数据连接
adapter.SelectCommand = new OleDbCommand(sqlstring, objConnection); //执行查询语句
//创建dataset 对象
adapter.Fill(dataset); //添加dataset 对象
Chaxun_GridView.DataSource = dataset; //定制gridview的数据源
Chaxun_GridView.DataBind(); //将数据源绑定到gridview控件
//自定义显示的表头
Chaxun_GridView.HeaderRow.Cells.Clear(); //清空控件默认的表头
TableCell HeadCell = new TableCell(); //定义一个表格
HeadCell.Text = "详细 </td> <td>业务编号 </td> <td>申请人 </td> <td>身份证号 </td> <td>性别 </td> <td>区县 </td> <td>业务状态 </td> <td>审核结果 </td>"; //自定义单元格,作为表头
Chaxun_GridView.HeaderRow.Cells.Add(HeadCell); //添加自定义表头
Shiju_GridView.Visible = false; //市局默认的显示数据不可见
Quxian_GridView.Visible = false; //区县默认的显示数据不可见
}
catch (Exception ex)
{
Response.Write("数据库错误,错误原因:" + ex.Message);
Response.End();
}
finally
{
objConnection.Close();//关闭数据连接
dataset.Dispose(); //关闭dataset对象
}
}
//点击查询条件调用上述的数据绑定方法 :
protected void Button1_Click(object sender, EventArgs e)
{
key = this.Name_TextBox.Text.Trim(); //获取查询条件,申请人姓名
// Response.Write(key);
if(district.Equals("纽约"))
{
selectSQl = "select [num], [applicant], [applicantId], [applisex], [district], [state], [isSuc] from [tbAppli_Info] where [applicant] like '" + "%" + key + "%" + "' and [state] like '" + "%" + state + "%" + "'"; //市局工作查询语句
}else
{
selectSQl = "select [num], [applicant], [applicantId], [applisex], [district], [state], [isSuc] from [tbAppli_Info] where [applicant] like '" + "%" + key + "%" + "'and [district] = '" + district + "'";//区县的查询语句
}
MyDataBind(selectSQl); }
答案
点GridView的事件里的PageIndexChanging事件,双击进去,在这个事件里写两行代码就OK了。
具体代码:
this.gvShowInfo.PageIndex = e.NewPageIndex;
//重新绑定数据源