注册 登录
编程论坛 ASP.NET技术论坛

小问题

makewelldone 发布于 2007-04-10 19:57, 1010 次点击

private void Submit1_ServerClick(object sender, System.EventArgs e)
{
string str="select * from Book";
SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);

if(TextBox1.Text != null)
{
str=str+" where bookname like '%"+TextBox1.Text+"%'";
}

SqlCommand comm = new SqlCommand(str,conn);

SqlDataAdapter da = new SqlDataAdapter(comm);

DataSet ds = new DataSet();



Label1.Text = DataGrid1.PageCount.ToString();


da.Fill(ds ,"Book");

DataGrid1.DataSource =ds;

DataGrid1.DataBind();

}

private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
DataGrid1.CurrentPageIndex = e.NewPageIndex ;

DataGrid1.DataBind();

}

private void TextBox1_TextChanged(object sender, System.EventArgs e)
{
DataGrid1.CurrentPageIndex=0;

}

private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)
{

}
为什么在多次查询后,点下一页时出现CURENTPAGEINDEX必须大于0小于PAGECOUT的错误

10 回复
#2
skyland842007-04-11 09:17
提示不是说得很清楚了么?
#3
Kendy1234562007-04-11 09:20

private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
if e.NewPageIndex < = DataGrid1.PageCount
{
DataGrid1.CurrentPageIndex = e.NewPageIndex ;
}

DataGrid1.DataBind();

}

#4
liuminghui2007-04-11 10:45
#5
bygg2007-04-11 11:49

private void TextBox1_TextChanged(object sender, System.EventArgs e)
{
DataGrid1.CurrentPageIndex=0;

}

这个有什么用????

#6
Kendy1234562007-04-11 11:55

楼上这个问题和楼主的问题有什么关系

#7
bygg2007-04-11 12:58
呵, 我想知道LZ的错误是显示在哪行的..
#8
Kendy1234562007-04-11 15:35
他都说了是 点 下一页 时 出的错
其实在走到最后一页就该把 下一页 disable掉
#9
bygg2007-04-11 15:39
呵呵,问题是出在,他在分页时没有重新绑定数据.LZ只写了个DataGrid1.DataBind().好像没有数据吧...
#10
makewelldone2007-04-11 18:39

是有数据的,在多次查询后,点下一页时出错

#11
Kendy1234562007-04-12 09:27
3楼我不是给你写的很明白了么。。。
1