PageSize="4"和 AllowPaging="True"都设置了 ,PageIndexChanging也有写啊。为什么gridview就只是显示一条的?

解决方案 »

  1.   

    你确定你分页代码啥的都没有问题??如果没有问题的话,那就是你取出来的符合条件并绑定到GridView中的记录只有一条,所以就显示一条记录了。
      

  2.   

    我的gridview上个有个查询的,就是有4个不同类型的问卷,但是都是问卷,应该都显示出来才对啊
      

  3.   

    SELECT     dbo.TiMu.ID, dbo.TiMu.Timu, dbo.TiMu.OptionA, dbo.TiMu.OptionB, dbo.TiMu.OptionC, dbo.TiMu.OptionD, dbo.WenJ.Name
    FROM         dbo.TiMu INNER JOIN
                          dbo.WenJ ON dbo.TiMu.WenJID = dbo.WenJ.ID
      

  4.   

    你查表的时候   有用join 么因为视图现在的SQL是取两个表的交集 ON dbo.TiMu.WenJID = dbo.WenJ.ID
      

  5.   

    我是这么查得(gvQueInfo, "Select * From TM_WJ ORDER BY Id DESC", "ID")
      

  6.   

    就是了,因为视图有额外的筛选,所以结果不一样.你需要先看看SQL
      

  7.   

    关键是我这样写也看不出什么错误SELECT     dbo.WenJ.ID, dbo.WenJ.Name, dbo.WenJLeiX.Name AS Expr1, dbo.WenJ.AddTime
    FROM         dbo.WenJ INNER JOIN
                          dbo.WenJLeiX ON dbo.WenJ.WenJLeiXID = dbo.WenJLeiX.ID
      

  8.   

    视图加了条件,有可能只有一条,如sql语句查出来多条,gridview能显示多条,就说明没错
      

  9.   

    我数据库里查那个视图可以查出很多个。就是gridview只显示一条
      

  10.   

    这是视图的代码:SELECT     dbo.WenJ.ID, dbo.WenJ.Name, dbo.WenJLeiX.Name AS Expr1, dbo.WenJ.AddTime
    FROM         dbo.WenJ INNER JOIN
                          dbo.WenJLeiX ON dbo.WenJ.WenJLeiXID = dbo.WenJLeiX.ID这是gridview的代码:<asp:GridView ID="gvQueInfo" runat="server" AllowPaging="True" 
                                    AutoGenerateColumns="False" Font-Size="9pt"  
                                    PageSize="4"  Width="433px" BackColor="White" 
                        BorderColor="#CC9966" BorderStyle="None" BorderWidth="1px" CellPadding="4" 
                        onpageindexchanging="gvQueInfo_PageIndexChanging" 
                        onrowdatabound="gvQueInfo_RowDataBound" 
                        onrowdeleting="gvQueInfo_RowDeleting" 
                        style="margin-top: 0px">
                                    <RowStyle BackColor="White" ForeColor="#330099" />
                                    <Columns>
                                        <asp:BoundField DataField="Name" HeaderText="问卷名称" />
                                        <asp:BoundField DataField="AddTime" HeaderText="添加时间" />
                                        <asp:HyperLinkField HeaderText="修改" 
                                            Text="修改" DataNavigateUrlFields="ID" 
                                            DataNavigateUrlFormatString="XiougaiWenjuan.aspx?ID={0}" />
                                        <asp:CommandField HeaderText="删除" ShowDeleteButton="True" />
                                    </Columns>
                                    <FooterStyle BackColor="#FFFFCC" ForeColor="#330099" />
                                    <PagerStyle BackColor="#FFFFCC" ForeColor="#330099" HorizontalAlign="Center" />
                                    <SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="#663399" />
                                    <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="#FFFFCC" />
                                </asp:GridView>
    这是查询代码:if (!IsPostBack)
            {
                dataconn.obtain(gvQueInfo, "Select * From WJ_WJLX  order by ID desc", "ID");
            }
      

  11.   

    齐了怪了。数据库里查询视图就有很多个,而运行gridview就只显示一个。
      

  12.   


    这个问题一定是你在 gridview 的ItemDataBound事件里面处理数据报错,导致只显示一条数据,我昨天就遇到这种情况。你先打个断点调试下ItemDataBound事件里的代码,确定有没有问题!!!