简单的方法是采用自定义分页技术,然后指定每翻一次页让后提取当前页
的条数,例如如果当前页面可以显示15条就只在提取数据时提取top 15即可
关键是要在存储过程或者sql语句中实现,而且要指定DataGrid1.VirtualItemCount=
你的记录条数这样才能确保在自定义分页时显示共有多少页,然后每翻一页时
根据当前的currentpageindex属性例如是第一页,那么在sql语句中写成
@page int
@id int
set @page = @page*15
select top 15 *    where id=@id and id not in(select TOP ' + @page + 'id from tablename) order by id'
之后的datagrid 在翻页时提取都databind一次就可以,这种技术就算是有上万条都不会影响速度的

解决方案 »

  1.   

    分页,或者如果你喜欢C/S程序的性能,可以做成WinForm,把它嵌入WebForm中,这和ActiveX控件相似,但并不是ActiveX。
      

  2.   

    还是采用分页吧,不要把所有页的东西在一次都装入datagrid,否则速度会很慢!
      

  3.   

    我有一个办法.就是不用DATAGRID....自己画一个TABLE出来就可以了.而且只取自己要的数据.
    我个人的经验就是采用服务端控件会造成很多的问题.速度慢.压力大.开销大.网页打开慢等..
    我们互联星空游戏频道的页面就是这样的.
    http://game.chinavnet.com
    http://www.vnetbbs.com
      

  4.   

    如果还是不懂可以加我的MSN:[email protected]
      

  5.   

    1   我已经分页了,如果不分页当记录去到200多行的时候就更加慢了    不过我的分页只是简单的设置成分页而已,从来没设置过DataGrid1.VirtualItemCount    一会去看看,应该是custon paging吧
    2   另外不自己画的原因是我要用到selectedindex来做一个txtbox和listbox的摸板应用3   我很想弄成类似ACTIVEX的,楼上的同学说那种把WINFORM 做成 WEBFORM的方法我从来没听过,能否详细介绍下 原理/?
      

  6.   

    在WEbForm中嵌入WinForm控件:http://chs.gotdotnet.com/quickstart/winforms/doc/WinFormsIeSourcing.aspx