日期:2014-05-19  浏览次数:20429 次

gridview的分页、模版列问题(急)
关于gridview有几个分页问题想请问一下各位大哥大姐~

1、当记录数目不满足1页时,即使开启了分页也不会显示,不知道有什么办法没有?

2、使用分页时,经常需要重新绑定数据
      小弟为了减少查询数据库的次数,没有重新查询一次,而是在每次初始绑定时候把数据DataTable存在   Session里面,由此又带来很多别的问题。
      对于我这个情况,不知道有什么好的解决方法?


3、这个跟分页无关,不过也是gridview的问题,
      我在gridview中加入一个模版列

<asp:TemplateField   HeaderText= "用户名 ">
<ItemStyle   BorderColor= "#666666 "   BorderWidth= "1px "   CssClass= "p14 "   Height= "20px "   Width= "30% "   HorizontalAlign= "Center "   />
<HeaderStyle   BorderColor= "#666666 "   BorderWidth= "1px "   Width= "30% "   />
<ItemTemplate>
<table   width= "100% "   height= "20px ">
<tr>
      <td   width= "5% ">
      </td>
      <td   width= "90% "   align= "center ">
              <asp:Label   ID= "lblDrawId "   runat= "server "   Text= ' <%#bind( "USER_NAME ")   %> '> </asp:Label>
      </td>
      <td   width= "5% ">
              <asp:ImageButton   ID= "ibtnBonus "   runat= "server "   CausesValidation= "False "   CommandName= "Select "   ImageUrl= "~/pic/hot.gif "   />
      </td>
      </tr>
</table>
</ItemTemplate>
</asp:TemplateField>

为了在一个单元格里面的中间显示文字,右侧有一个可以点击弹出新页的图片,在单元格内加了一个Table,可是不知道为什么造成单元格的   高度会变大,并且不论在哪里设置也减不下来

4、同样,使用上面的模版列方式,点击图片后利用gridview_SelectedIndexChanging里面获得选取的行数,从而得到参数并传递到弹出页,可是有一点不好会刷新本也。不知道有什么好的方案可以代替?

------解决方案--------------------
1.不要用默认的分页,自己写分页或用分页组件
2.用存储过程分页
------解决方案--------------------
如果你的数据所有访问者都是相同的,那么应该保存在Cache中而不是Session中,因为每个访客都会有一个Session,访问的人多了内存吃不消的。分页的问题可以试试我写的这个免费分页控件:http://www.webdiyer.com