GridView排序

GridView排序的三种方式 因为GridView本身不支持排序,所以只能对数据源进行排序。因为DataSet和List本身也是不支持排序的,所以写了以下例子。大家附加压缩包内的数据库就可以运行了。如果数据库实例有问题可以将配置文件中的服务器名由.改为您的数据库服务器实例名。 有兴趣的朋友可以下载看下,希望大家提出宝贵意见! 立即下载
 

1.页面文件:
需要对GridView启用AllowSorting、设置OnSorting事件,对需要排序的列设定SortExpression属性。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="Blue"
                        BorderColor="#999999" BorderStyle="None" BorderWidth="1px" CellPadding="3" GridLines="Vertical"
                        Width="98%" AllowSorting="True" OnSorting="GridView1_Sorting">
                        <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
                        <Columns>
                            <asp:BoundField HeaderText="Text1" DataField="Column1" SortExpression="Column1"/>
                            <asp:BoundField HeaderText="Text2" DataField="Column2" SortExpression="Column2"/>
                            <asp:BoundField HeaderText="Text3" DataField="Column3" SortExpression="Column3"/>
                        </Columns>

 

2.后台文件:

一般排序都是按string类型排序的,如果需要按数字大小等进行排序

如果这个DataTable是自己手工创建的,请指定其数据类型:  
  dt.Columns.Add("columnname",typeof(int));

 如果这个DataTable是从数据库中取出,那么就需要在sql语句中做一些处理,把它转换成数字型:  
  select   convert(column,int)   column  from   table1

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class admin_OrderAnalyse : System.Web.UI.Page
{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

// 设定初始排序参数值

this.GridView1.Attributes.Add("SortExpression", "id");

this.GridView1.Attributes.Add("SortDirection", "ASC");

// 绑定数据源到GridView

 this.BindGridView();

}

}

protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
    {
        //从事件参数获取排序数据列
        string sortExpression = e.SortExpression.ToString();
        //假定为排序方向为“顺序”
        string sortDirection = "ASC";
        //“ASC”与事件参数获取到的排序方向进行比较,进行GridView排序方向参数的修改
        if (sortExpression == this.GridView1.Attributes["SortExpression"])
        {
            //获得下一次的排序状态
            sortDirection = (this.GridView1.Attributes["SortDirection"].ToString() == sortDirection ? "DESC" : "ASC");
            // 重新设定GridView排序数据列及排序方向程序开
            this.GridView1.Attributes["SortExpression"] = sortExpression;
            this.GridView1.Attributes["SortDirection"] = sortDirection;
            this.BindGridView();
        }
    }

    /// <summary>
    /// 绑定到GridView
    /// </summary>
    private void BindGridView()
    {
        // 获取GridView排序数据列及排序方向
        string sortExpression = this.GridView1.Attributes["SortExpression"];
        string sortDirection = this.GridView1.Attributes["SortDirection"];
        // 调用业务数据获取方法
        DataTable dt= this.BindDt();
        // 根据GridView排序数据列及排序方向设置显示的默认数据视图
        if ((!string.IsNullOrEmpty(sortExpression)) && (!string.IsNullOrEmpty(sortDirection)))
        {
            dtBind.DefaultView.Sort = string.Format("{0} {1}", sortExpression, sortDirection);
        }
        // GridView绑定并显示数据
        this.GridView1.DataSource = dt;
        this.GridView1.DataBind();

    }

DataTable BindDt()
   {
        DataTable dt = new DataTable();
        dto.Columns.Add("XXX");
        dto.Columns.Add("XXX");
        dto.Columns.Add("XXX",typeof(int));

        DataRow dr = dto.NewRow();
     
        dr["XXX"] =

        dr["XXX"] =       

        dr["XXX"] =

        dto.Rows.Add(dr);
        return dt;
    }

}

GridView控件的排序、分页、编辑功能实现实例 GridView控件的排序、分页、编辑等功能的实现实例。 立即下载

相关推荐

GridView排序类完整代码

GridView排序类完整代码

gridview 实现排序

GridView控件提供了用于实现排序功能的接口,通过设置相关属性并实现排序事件的处理程序就可以完成排序功能。 第一步,点击选中GridView控件,设置GridView的AllowSorting属性为True,如下图所示: 第二步,设置待排序字段的SortExpression属性,如下图所示:     首先点击GridView右上角的小箭头,出现如下界面:

kele2005的专栏 2444

MCP协议桥接AdsPower:AI原生时代的浏览器自动化新范式

浏览器自动化是Web开发和数据采集领域的核心技术,其核心原理是通过程序控制浏览器内核执行页面导航、元素交互和数据提取等操作。传统方案如Selenium和Playwright虽功能强大,但在管理多实例、指纹隔离等复杂场景下,配置和维护成本较高。随着AI原生应用的发展,Model Context Protocol(MCP)作为一种标准化协议,为AI助手与外部工具间的通信提供了统一接口,显著提升了自动化流程的构建效率和自然语言交互能力。通过MCP Server桥接AdsPower指纹浏览器的本地API,开发者可将

weixin_30552811的博客 296

gridview排序

在GridView中可以通过两种方式来指定模板列的标题:     1 通过HeaderText属性指定: &lt;asp:TemplateField SortExpression="..." HeaderText="..." &gt; &lt;ItemTemplate&gt; ....... ...

木初的专栏 592

树莓派与ROS2

树莓派与ROS2(Robot Operating System 2)的结合使用为机器人开发、自动化控制以及物联网项目提供了强大的平台。

weixin_47695827的博客 1754

通俗易懂的图解二叉搜索树、AVL树和红黑树

搜索是一种很常见的需求,当数据较多时,如何找到目标对象时,即需要搜索查找。 那么如何快速找到目标呢,最朴素的思想就是暴力查找,一个一个对比。 显然,当数据量增大时,我们需要优化查找方法获取更快的查找速度,我们可以通过维护一个有序数组,从而实现二分查找,查找速度从O(n)降为O(longn)。 但是数组并不便于插入和删除,链表便成为了最好的选择。 既然是采用二分查找,那么不如直接按照查找的步骤维护一种数据结构,于是二叉搜索树出现了。 二叉搜索树的性质为: 若左子树不为空,则左子树上所有节点值都小于根结点值;

暗色光的博客 758

gridview列排序功能

gridview如果使用sqldatasource绑定数据集的话分页只需将gridview 属性设置为 AllowSorting="True" 即可,但是如果采用其它数据源绑定属性 AutoGenerateColumns  如果设置为false 那么上面的排序方法则行不通。必须自定义排序。   页面 gridview 设置 如下:     后台cs代码     重点步骤:自定义

生如夏花之灿烂! 1万+

8、对比 LightGBM、XGBoost 和深度学习

本文对比了LightGBM、XGBoost和深度学习模型(特别是TabTransformer)在处理表格数据时的性能差异。从模型复杂度、数据准备、训练时间、准确性和适用场景等方面进行分析,重点探讨了三者在人口普查收入预测任务中的表现。文章详细介绍了XGBoost与LightGBM的核心特性与区别,深入讲解了TabTransformer的架构与实现,并涵盖了分类特征编码、缺失值处理和类别不平衡等关键数据预处理技术,为选择合适的表格数据建模方法提供了实践指导。

julia4scientist的博客 120

GridView排序以及对各行的控制

一、GridView排序 1.设置GridView允许排序AllowSorting="True" 2.设置排序字段SortExpression=排序字段 3.编写Sorting事件代码 //判断用户点击了哪个排序字段           protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)

wangjingjing1014的专栏 1586

基于simulink 的不间断电源ups的项目实例

UPS系统的核心组件包括整流器、逆变器、电池管理系统和控制系统。- **Three-Phase Controlled Rectifier**:设置触发角为0度,用于控制整流器的输出电压。- **Three-Phase Inverter**:设置逆变器的输出频率为60Hz,用于将直流电转换为交流电。- **Control System**:编写MATLAB函数,用于监测市电状态并控制各模块的工作模式。- **Step**:设置阶跃时间,例如0.05秒,阶跃前后的值分别为0和1,用于模拟市电中断。

xiaoheshang_123的博客 711

SPICE仿真软件:HSPICE_(22).HSPICE仿真案例分析

通过上述案例分析,我们可以看到HSPICE仿真软件在不同电路类型和仿真场景中的应用。无论是简单的直流分析、交流分析还是复杂的暂态分析,HSPICE都能提供详细的仿真结果,帮助我们更好地理解和优化电路设计。希望这些案例能够为读者提供实用的参考和指导,进一步提升使用HSPICE进行电路仿真的能力。输入文件的编写:确保输入文件格式正确,使用注释来解释每一部分的内容。分析类型的选择:根据电路的特点选择合适的分析类型,如.DC.AC和.TRAN。输出结果的设置:使用.print命令来指定需要输出的节点电压和支路电流。

kkchenjj的博客 1309

GridView多列排序

今天有个需求,对gridview实现多列排序,正反都得实现,刚接触gridView不久,不是很了解,琢磨了一下,得到了结局方法,记录下来,希望能对他人有所帮助 要求对lcstage和toolname两列排序。 多列排序实质是在对多列的 自己单独设置。 前台代码: <asp:GridView ID="GridView1" runat="server" AllowSor

Bradwarden的专栏 3586

学Simulink——基于Simulink的Buck-Boost变换器双闭环PI+抗饱和设计建模示例

本文详细介绍了基于Simulink的非反相Buck-Boost变换器双闭环控制设计方法。针对Buck-Boost变换器特有的右半平面零点(RHPZ)和控制挑战,提出了电压-电流双闭环PI控制架构,并集成抗积分饱和机制。通过Simulink建模,实现了主电路、电流内环PI、电压外环PI、PWM及占空比限幅等模块的搭建,验证了在输入电压跌落(20V→10V)和负载突变(2A→4A)等场景下的稳定性能。仿真结果表明,输出电压波动小于0.35V,恢复时间快于1ms,电感电流有效限幅。文章还讨论了工程实践要点和扩展方

xiaoheshang_123的博客 318

GRIDVIEW排序

在asp.net 2.0中,如果是使用gridview的话,可以要对gridview进行排序的话,可以配合sqldatasource来使用,已经内建了排序的功能(即点列标题进行排序),但如果要配合其他数据源控件的话,则必须使用自定义的排序方法了,今天学习到了如何用dataset搭配gridview的话,进行标题排序,现将其方法摘录如下:     首先,用一个方法将数据取出来,放到DATASET里去

spiritelf的专栏 1342

新手必看!手把手教你如何在飞牛NAS上玩转Docker容器!(飞牛Nas(fnOS)如何创建Docke容器以及Compose部署项目)

新手必看!手把手教你如何在飞牛NAS上玩转Docker容器!(飞牛Nas(fnOS)如何创建Docke容器以及Compose部署项目)

XiaoqiangClub的博客 1万+

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

GridView排序功能的实现

因为dataset不支持排序,所以将dataset绑定到GridView上以后不能使用GridView的 排序功能,要排序需要手动实现GridView的Sorting事件,通过DataView的排序功能来对GridView进行排序,下面是一个例子   //********************************************************************

roden的专栏 6557

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

C#中GridView的排序用法

  此方法摘录于:http://topic.youkuaiyun.com/u/20071109/20/C598BB6E-4CA8-4CD0-8204-E42A315FD5D0.html1、利用DataView来进行排序。 使用Seesion把排序的状态值保存,再利用DataView的Sort方法进行排序,再次帮带到GridView的数据源上。具体代码如下: using Sy

yc_8301的专栏 7997

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

gridview 的排序

在gridview 当中我们时常会要对各列进行排序,下面是排序的代码: #region GridView排序        protected void GridViewRowCreated(object sender, GridViewRowEventArgs e, GridView gvData)        {            if (e.Row.RowType == DataC

loveheye的专栏 667

Gridview中按字段排序

首先对gridview的AllowSorting 属性值改为True;然后对需要排序的字段的SortExpression 属性 加上该字段的名字;接着添加gridview的Sorting方法,如下;最后写1个方法SortGridView(设置排序的字段和排序方式)和构造函数GridViewSortDirection(获取当前的排序方式) protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) {

On the way 4950

GridView之点击表头排序篇

GridView点击表头排序 示例GridView本身有一个Sort()函数:public virtual void Sort ( string sortExpression,    SortDirection sortDirection)    ---排序数据列和排序方向使用上相当方便。但在实际使用中,常用的是点击每一列的标题来排序,点击标题会触发:protected void GridView_Sorting(object sender, GridViewSortEventArgs e)事件。从Grid

Haibing的博客 4298

gridview动态排序,

步骤如下:protected void Page_Load(object sender, EventArgs e) protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ViewState["SortOrder"] = "Admi

wwttqq85538649的专栏 694

GridView自动排序

设置GridView的属性 AllowSorting为True。并触发OnSorting事件(找到GridView的Sorting事件,双击即可)。 GridView绑定字段时,给需要排序的列添加SortExpression,如要按ID列排序,则设置ID对应的列的SortExpression="ID",SortExpression的字段应该是数据表中对应的字段,如下例:

bydxyj的专栏 1251

GridView根据列名进行排序

我笨,就用最笨的方法记录下来,等下次用的着了,就不用在费尽脑细胞的想了。会者不难,难者不会,路过的,有好的建议请留下,加我好友,我向你学习;不会的,学习了,加我好友,我们共同进步。前台页面:GridView 添加属性 AllowSorting="True" 添加事件 OnSorting        CellPadding="4" ForeColor="#333333" GridLines="None" AllowSorting="True"         OnSorting="gv_Sort_Sorti

夜颇黎 3519
上一篇: 工作流
java520ll
博客等级 码龄15年 2粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值