日期:2014-05-17  浏览次数:20474 次

Gridview控件的使用,
为什么我按条件查询完之后,查询完的数据在Gridview中显示出来,但我一点击下一页,Gridview里显示的数据就不是我刚查询完的,而是数据库中所有的数据,也就是说下一页这类按钮不顶用,怎么解决这个问题,谢谢,

------解决方案--------------------
你分页肯定不对。。。PageIndex 有木有值。。
------解决方案--------------------
lz 你是用的 Gridview 自带的分页 还是你自己写的
------解决方案--------------------
是用分页控件AspNetPager吗
贴代码出来看看
------解决方案--------------------
那就是分页没写好
------解决方案--------------------
PageIndex+1 然后重新绑定数据
------解决方案--------------------
分页写得不对,写个方法BindGridView(int pageIndex),然后
在Page_Load事件里:
if(!IsPostBack)
BindGridView(20);

在GridView的PageIndexChanging事件里:
GridView1.PageIndex=e.NewPageIndex;
BindGridView(20);
------解决方案--------------------
这是我以前收集的GridView分页方法给你:
方法一:
 关于GridView分页页码的讨论 
在GridView中实现分页的效果方法很简单,只需要在“GridView任务”对话框中进行设置就可以了。在“GridView任务”对话框中,选择“启用分页”命令,这样建立起简单的分页效果。

在使用“启用分页”命令的时候要注意两点。

(1) 是否允许分页

GridView的AllowPaging属性。AllowPaging:是否允许分页。如果AllowPaging=“true”就是允许分页。否则就是不允许使用分页。

(2) 每页记录数

GridView的PageSize属性。在GridView控件的属性中可以设置每页显示的数据记录的个数。默认情况下PageSize的值是10,也可以根据需要进行设置。

如果想要对分页编码进行设置的话,可以在HTML代码中为GridView控件添加分页导航条形式代码。也就是启用GridView的PagerSettings属性,在PagerSettings属性中可以设置根据需要设置Mode的值,来实现分页编码的显示效果。



<PagerSettings 

Mode = "NextPreviousFirstLast" 

FirstPageText = "第一页" 

LastPageText = "末页"> 

</PagerSettings> 

注意:

PagerSettings属性的Mode:Numeric,NextPrevious,NextPreviousFirstLast,NumericFirstLast。有这四种,可以根据不同需要进行不同的选择设置。

自动设置分页效果
现在想要在GridView控件上显示如下页码信息:总页数、当前页、首页、上一页、下一页、尾页。


 创建总页数

<asp:Label ID="Lab_PageCount" runat="server" Text="<%# ((GridView)Container.NamingContainer).PageCount %>"></asp:Label>

 创建但前页

<asp:Label ID="Lab_CurrentPage" runat="server" Text="<%# ((GridView)Container.NamingContainer).PageIndex + 1 %>"></asp:Label>

创建首页

<asp:LinkButton ID="LBtn_FirstPage" runat="server" CommandArgument="First" CommandName="Page"

Visible="<%# ((GridView)Container.NamingContainer).PageIndex != 0 %>">首页</asp:LinkButton>

创建上一页

<asp:LinkButton ID="LBtn_PreviousPage" runat="server" CommandArgument="Prev" CommandName="Page"

Visible="<%# ((GridView)Container.NamingContainer).PageIndex != 0 %>">上一页</asp:LinkButton>

创建下一页

<asp:LinkButton ID="LBtn_NextPage" runat="server" CommandArgument="Next" CommandName="Page"

Visible="<%# ((GridView)Container.NamingContainer).PageIndex != ((GridView)Container.NamingContainer).PageCount - 1 %>">下一页</asp:LinkButton>

创建尾页

<asp:LinkButton ID="LBtn_LastPage" runat="server" CommandArgument="Last" CommandName="Page"

Visible="<%# ((GridView)Container.NamingContainer).PageIndex != ((GridView)Container.NamingContainer).PageCount - 1 %>">尾页</asp:LinkButton>

对应后台代码

public void GetDataSet()
{
string zhuangtmc;
zhuangtmc = Convert.ToString(DropDownList1.Text);