GridView自带分页功能的使用

GridView有自带的分页功能,但是今天我用的时候出错了。

报错:The data source does not support server-side data paging。

后来网上查到SqlDataReader 不支持分页,需要用SqlDataAdapter 和DataSet 代替,代码如下。

 public DataSet GetAllUserInfo()
{
SqlConnection myConnection = new SqlConnection(
ConfigurationManager.ConnectionStrings["EmergencyHandlingDBConnectionString"].ConnectionString);

SqlCommand myCommand = myConnection.CreateCommand();//创建command
myCommand.CommandType = CommandType.StoredProcedure;//指定执行存储过程操作
myCommand.CommandText = "GetUserInfo";//存储过程名称

//定义DateReader
//SqlDataReader dr = null;

SqlDataAdapter da = new SqlDataAdapter(myCommand);
DataSet ds = new DataSet();
da.Fill(ds);
try
{
//myConnection.Open();


//读取数据
//dr = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (SqlException ex)
{
throw new Exception(ex.Message, ex);
}

return ds;
}

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindGrid();
}
}

protected void BindGrid()
{
DataSet ds = user.GetAllUserInfo();
//SqlDataReader dr = user.GetAllUserInfo();

UserManageGridView.DataSource = ds;
UserManageGridView.DataBind();

//dr.Close();
}

然后代替之后没有上面报错了,但是翻页的时候又报错了...

报错:The GridView 'UserManageGridView' fired event PageIndexChanging which wasn't handled.

再查,发现是没有处理PageIndexChanging时间,然后加上下面代码,终于能正常运行。

protected void UserManageGridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
UserManageGridView.PageIndex = e.NewPageIndex;
BindGrid();
}

需要学习的如此之多啊,对于新手再小的问题都是大问题...哎!

路漫漫啊......

转载于:https://www.cnblogs.com/stoneJin/archive/2011/10/10/2205730.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值