Linux中国  设为主页
 收藏本站
 
当前位置: > 首页 ->编程语言 ->ASP.NET ->C# GridView 排序及分页
  相关分类: 
ASP
ViualBasic
UML / Rational Rose
PHP4/PHP5
Perl
JAVA/JSP教程
Delphi
ColdFusion
CGI
C/C++
ASP.NET
XML
  站内搜索: 
热门文章排行
热门文章排行 C#编写的windows计算器-源代码(06-04)
C# 操作文件(06-04)
c#操作word表格(06-04)
使用C#在进度条中显示复制文件的进度(06-04)
C# GridView 排序及分页(06-04)
精采文章排行
精采文章排行 用C#实现FTP搜索引擎(06-04)
对C# 2.0中匿名方法的怀疑分析(06-04)
在C#中利用DirectX实现声音播放(06-04)
使用C#在进度条中显示复制文件的进度(06-04)
C#中利用Markup Service实现HTML解析(06-04)
  ·对C# 2.0中匿名方法的怀疑分析·在C#中利用DirectX实现声音播放·使用C#在进度条中显示复制文件的进度·C#中利用Markup Service实现HTML解析为DO·c#操作word表格·C#代码操作IIS之虚拟目录·如何使用C#在发送往client的内容上加js代·[C#]解决读写包含汉字的txt文件时乱码的·C#实现根据域名查询ip实例

C# GridView 排序及分页

作者:Webmaster   来源:Linuxdby.com   点击:   日期:2007-06-04 [收藏] [投稿]

  IE是否经常中毒?推荐您

如果你在GridView控件上设置 AllowPaging="true" or AllowSorting="true" 而没有使用使用数据源控件 DataSource (i.e. SqlDataSource, ObjectDataSource),运行则会出现下列错误:

当你在GridView控件上单击下一页时:

The GridView 'GridViewID' fired event PageIndexChanging which wasn't handled.

当你点击排序时,则回出现:

The GridView 'GridViewID' fired event Sorting which wasn't handled.

如果你没有设置GridView的DataSourceID 的属性,你必须添加一个操作才可以排序及分页。。


  点这里查看下面的例子

 

<%@ Page Language="C#" %>

<%@ Import Namespace="System.Data" %>

<%@ Import Namespace="System.Data.OleDb" %>

 

<script runat="server">   

    private void PopulatePublishersGridView()

    {

        string connectionString = AccessConnectionString();

        OleDbConnection accessConnection = new OleDbConnection(connectionString);

 

        string sqlQuery = "SELECT [PubID], [Name], [Company Name], [Address], [City], [State], [Zip], [Telephone], [Fax], [Comments] FROM Publishers ORDER BY [Name] ASC;";

 

        OleDbCommand accessCommand = new OleDbCommand(sqlQuery, accessConnection);

 

        OleDbDataAdapter publishersDataAdapter = new OleDbDataAdapter(accessCommand);

        DataTable publishersDataTable = new DataTable("Publishers");

        publishersDataAdapter.Fill(publishersDataTable);

 

        int dataTableRowCount = publishersDataTable.Rows.Count;

 

        if (dataTableRowCount > 0)

        {

            gridViewPublishers.DataSource = publishersDataTable;

            gridViewPublishers.DataBind();

        }

    }

 

    private string AccessConnectionString()

    {

        string accessDatabasePath = Server.MapPath("~/App_Data/biblio.mdb");

        return String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};", accessDatabasePath);

    }

 

    private string GridViewSortDirection

    {

        get { return ViewState["SortDirection"] as string ?? "ASC"; }

        set { ViewState["SortDirection"] = value; }

    }

 

    private string GridViewSortExpression

    {

        get { return ViewState["SortExpression"] as string ?? string.Empty; }

        set { ViewState["SortExpression"] = value; }

    }

 

    private string GetSortDirection()

    {

        switch (GridViewSortDirection)

        {

            case "ASC":

                GridViewSortDirection = "DESC";

                break;

 

            case "DESC":

                GridViewSortDirection = "ASC";

                break;

        }

 

        return GridViewSortDirection;

    }

 

    protected void gridViewPublishers_PageIndexChanging(object sender, GridViewPageEventArgs e)

    {

        gridViewPublishers.DataSource = SortDataTable(gridViewPublishers.DataSource as DataTable, true);

        gridViewPublishers.PageIndex = e.NewPageIndex;

        gridViewPublishers.DataBind();



 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<

上一页12 3 下一页

上一篇:RadioBox、CheckBox和Validating事件的相关处理   下一篇:对C#委托及事件委托的理解
文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论

   相关文章:
·用C#实现FTP搜索引擎

   文章评论:(1条)
  
 请留名: 匿名评论   点击查看所有评论 论坛讨论
 

 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。