GridView触发了未处理的事件PageIndexChanging [英] The GridView fired event PageIndexChanging which wasn’t handled

查看:74
本文介绍了GridView触发了未处理的事件PageIndexChanging的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用vs 2010来开发一个网络应用程序

我已经创建了一个网格视图:

< asp: GridView ID =   GridView2 runat =   server AutoGenerateColumns =   False 
DataSourceID = SqlDataSource3 DataKeyNames = Id AllowPaging = True OnPageIndexChanging = GridView2_PageIndexChanging
>







in page.aspx.cs我写道:

  protected   void  GridView2_PageIndexChanging( object  sender,GridViewPageEventArgs e)
{


GridView2.PageIndex = e.NewPageIndex;
GridView2.DataSource = dt;
GridView2.DataBind();
}





但问题是除了第一页以外所有其他页面2,3 ,4 ...空白:/

我的问题是什么?

解决方案

让你的页面大小4

然后看。


亲爱的朋友



这时当你点击下一页时,服务器就是邮件包..

所以dt(数据表或数据集)应该是空的。

这就是问题。所以你试着将dt值保持为viewstate,如





当您从数据库获取数据然后您指定类似。,

 viewstate(dt_data )= DT; 
GridView2.DataSource = dt;
GridView2.DataBind();





然后现在你添加像这样的页面索引更改代码..



 受保护  void  GridView2_PageIndexChanging ( object  sender,GridViewPageEventArgs e)
{


GridView2.PageIndex = e.NewPageIndex;
GridView2.DataSource = viewstate( dt_data);
GridView2.DataBind();
}





这就是所有..



现在你检查页面索引工作正常。





我希望这些信息对你有所帮助。,



谢谢和问候



Angappan.s


首先你做

< asp:GridView ID =   GridView2 runat =   server AutoGenerateColumns =   False 
DataSourceID = SqlDataSource3 DataKeyNames = Id AllowPaging = True OnPageIndexChanging = G ridView2_PageIndexChanging

pageSize = 10>





如果你给

 DataSourceID =SqlDataSource3

则不需要to DataSource = dt



只需写一次





 受保护  void  GridView2_PageIndexChanging( object  sender,GridViewPageEventArgs e)
{


GridView2.PageIndex = e.NewPageIndex;
GridView2.DataBind();
}







请建立并使用Probelm Persist而不是发表评论。


I am using vs 2010 to develop a web app
I have create a grid view as this:

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False"
                               DataSourceID="SqlDataSource3" DataKeyNames="Id" AllowPaging="True" OnPageIndexChanging="GridView2_PageIndexChanging"
                               >




in page.aspx.cs i have wrote:

protected void GridView2_PageIndexChanging(object sender, GridViewPageEventArgs e)
           {


               GridView2.PageIndex = e.NewPageIndex;
               GridView2.DataSource = dt;
               GridView2.DataBind();
           }



BUT THE PROBLEM IS THAT EXCEPT THE FIRST PAGE.. ALL THE OTHER PAGES 2,3,4... ARE BLANK :/
WHERE IS MY PROBLEM??

解决方案

make your page size 4
then see.


Dear Friend

Here when you click your next page., server is post pack..
so dt (datatable or dataset) should be empty.,
that is the problem., so you try to keep dt value as viewstate like


when you getting data from database then you assign like.,

viewstate("dt_data")=dt;
GridView2.DataSource = dt;
GridView2.DataBind();



then now you add page index changing code like this..

protected void GridView2_PageIndexChanging(object sender, GridViewPageEventArgs e)
            {


                GridView2.PageIndex = e.NewPageIndex;
                GridView2.DataSource = viewstate("dt_data");
                GridView2.DataBind();
            }



that''s all..

now you check page index is working fine.,


I hope this information is helpful to you.,

Thanks and regards

Angappan.s


first you do

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False"
                               DataSourceID="SqlDataSource3" DataKeyNames="Id" AllowPaging="True" OnPageIndexChanging="GridView2_PageIndexChanging"
                               
  pageSize="10">



if you give

DataSourceID="SqlDataSource3"

then no need to DataSource =dt

just only write


protected void GridView2_PageIndexChanging(object sender, GridViewPageEventArgs e)
             {


                 GridView2.PageIndex = e.NewPageIndex;
                                 GridView2.DataBind();
             }




Please build it and used it if Probelm Persist than give your comment..


这篇关于GridView触发了未处理的事件PageIndexChanging的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆