在windows应用程序中DataGrid如何分页?
请给出详细的步骤一旦成功马上给分!

解决方案 »

  1.   

    yun~
    如何在WinForm中对DataGrid进行分页显示
    http://blog.csdn.net/knight94/archive/2006/03/23/635885.aspx
      

  2.   

    to 如果不要存储过程支持
    就在前面控制如何实现呢?用同样的语句去fill,加上参数即可,例如:
    http://blog.csdn.net/knight94/archive/2006/03/27/640008.aspx
    提到的第一种方法。
      

  3.   

    DataGrid 自定义分页
    private void showall()
    {
    SqlConnection con = new SqlConnection("server=.;database=***;uid=sa;pwd=sa");
    DataSet ds = new DataSet();
    SqlDataAdapter ada = new SqlDataAdapter("select * from student ",con);
    ada.Fill(ds); 
    DataGrid.DataSource=ds;
    DataGrid.DataBind();
    }
    private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
    {
    DataGrid1.CurrentPageIndex = e.NewPageIndex;
    DataGrid1.DataBind();
    showall();
    }
    自定义分页
    存储过程学的
    CREATE PROCEDURE [GetCustmoersDataPage]
    @PageIndex Int,
    @PageSize Int,
    @RecordCount int Out,
    @PageCount Int Out
    AS
    SELECT @RecordCount = Count(*) FROM TABLE1
    SET @PageCount = CEILING(@RecordCount/@PageSize)
    DECLARE @SQLSTR NVARCHAR(1000)
    IF @PageIndex = 0 OR @PageCount < =1
    SET @SQLSTR = N'SELECT TOP'+STR(@PageSize)+'TABLE1.* FROM TABLE1 ORDER BY id DESC'
    ELSE IF @PageIndex = @PageCount - 1
    SET @SQLSTR = N'SELECT * FROM(SELECT TOP'+STR(@RecordCount - @PageSize*@PageIndex)+'TABLE1.*FROM TABLE1 ORDER BY id ASC)TempTable ORDER BY id DESC'
    ELSE
    SET @SQLSTR =N' SELECT TOP '+STR( @PageSize )+' * FROM ( SELECT TOP '+STR( @RecordCount - @PageSize * @PageIndex )+' TABLE1.* FROM TABLE1 ORDER BY id ASC ) TempTable ORDER BY id DESC'
    EXEC (@SQLSTR)
    GO
      

  4.   

    第一个是DataGrid的自带分页
    简单的很很很~~~
      

  5.   

    WinForm中的分页,只要会对行号整除和取模的人,全会分页。