girdview 如果不是自动绑定数据源,而是自己设定的
,总是提示激发了未处理的事件“PageIndexChanging“我从网上找到方法:
一要在girdview 后面加 OnPageIndexChanging="GridView1_PageIndexChanging 二要cs页面中添加 protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
}
结果发现当我点击第二页的时候gridview中就没有东西了,我想是不是第二页也是新的page-load,原来赋给的数据源没有了,后来从网上看说应该这样:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
//分页有问题。
//GridView1.datasource = "数据源"; //引用刚才建立的数据源
GridView1.DataBind();
}
可是我的sql语句是有变化的,数据源可能不一样。我又想把sql设置成static的,结果还是不行。我感觉好像是第二页是个新的load,而我在新的load中有用到sql语句,并且从上个页面request到了数据影响了sql语句。
现在没有办法了,怎么解决这个问题。
,总是提示激发了未处理的事件“PageIndexChanging“我从网上找到方法:
一要在girdview 后面加 OnPageIndexChanging="GridView1_PageIndexChanging 二要cs页面中添加 protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
}
结果发现当我点击第二页的时候gridview中就没有东西了,我想是不是第二页也是新的page-load,原来赋给的数据源没有了,后来从网上看说应该这样:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
//分页有问题。
//GridView1.datasource = "数据源"; //引用刚才建立的数据源
GridView1.DataBind();
}
可是我的sql语句是有变化的,数据源可能不一样。我又想把sql设置成static的,结果还是不行。我感觉好像是第二页是个新的load,而我在新的load中有用到sql语句,并且从上个页面request到了数据影响了sql语句。
现在没有办法了,怎么解决这个问题。
解决方案 »
- 在母版页中,发生Microsoft JScript 运行时错误: 'Ext.Net.DirectMethod' 为空或不是对象的错去
- MVC页面遍历Dictionary集合
- 高手进... asp.net 从数据库里面导出数据为bat 超难.....
- 验证用户名
- 急求~! 论坛里主页面跟回贴页面,快速回贴页的代码?
- 关于flash游戏网站的积分提交
- 人在上海,2M的ADSL,自己架服务器和购买虚拟主机,速度差多少?
- 我为什么引用不了System.Windows.Forms???
- .net 超简单问题.
- 一个简单问题????
- 如何查询其他电脑上的access数据库?
- 谁能给推荐本asp.net 2.0的入门教材啊!
把你的数据源存到viewstate里如
viewstate["ds"]=ds;
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
//这么用
GridView1.datasource = (dataset)viewstate["ds"];
GridView1.DataBind();
}
把你的sql语句写出来看看
padding-top: 5px" id="tb_fy">
<tr>
<td width="192" align="right">
<asp:Literal ID="lb_num" runat="server"></asp:Literal>
<td width="60" align="center" class="hui912">
<asp:LinkButton ID="ibt_first" runat="server" Text="第一页" OnClick="ibt_first_Click" /></td>
<td width="60" style="width: 42px" align="center">
<asp:LinkButton ID="ibt_pre" runat="server" Text="上一页" OnClick="ibt_pre_Click" /></td>
<td width="60" align="center">
<asp:LinkButton ID="ibt_next" runat="server" Text="下一页" OnClick="ibt_next_Click" /></td>
<td align="center" width="60">
<asp:LinkButton ID="ibt_last" runat="server" Text="最后一页" OnClick="ibt_last_Click" /></td>
<td align="center" width="35">
转到</td>
<td width="35">
<asp:TextBox ID="tb_pageindex" runat="server" Width="30px"></asp:TextBox></td>
<td width="23">
页</td>
<td width="38" style="width: 35px">
<asp:ImageButton ID="bnt_go" runat="server" ImageUrl="images/btn_go.gif" OnClick="bnt_go_Click"
OnClientClick="return isOpage()" /></td>
</tr>
</table>protected void ibt_first_Click(object sender, EventArgs e)
{
gv_main.PageIndex = 0;
bindGrid();
}
protected void ibt_pre_Click(object sender, EventArgs e)
{
if (gv_main.PageIndex > 0)
{
gv_main.PageIndex--;
}
bindGrid();
}
protected void ibt_next_Click(object sender, EventArgs e)
{
if (gv_main.PageIndex < gv_main.PageCount - 1)
{
gv_main.PageIndex++;
}
bindGrid();
}
protected void ibt_last_Click(object sender, EventArgs e)
{
gv_main.PageIndex = gv_main.PageCount - 1;
bindGrid();
}
protected void bnt_go_Click(object sender, ImageClickEventArgs e)
{
if (tb_pageindex.Text != string.Empty) gv_main.PageIndex = Convert.ToInt32(tb_pageindex.Text) - 1;
bindGrid();
}
然后
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
BindData();
}
@student2 int,
@Clumn varchar(80),
@table varchar(80)
asdeclare @sql varchar(500)
begin set @sql='select * from '+@table+' where '+@Clumn+' in(select top '+convert(varchar,@student1*@student2)+' '+@Clumn+' from '+@table+') and '+@Clumn+' not in(select top '+convert(varchar,(@student1-1)*@student2)+' '+@Clumn+' from '+@table+')'
execute(@sql)end