在.Net 中 DataGrid 虽然有排序的功能,但并不支持双向的排序。用到了,看了些相关的帖子,自己尝试了一种方法,竟然也行得通,主要是用 DataGrid.Attributes 存了一个参数,同时在onSortCommand中修改了DataGridColumn的SortExpression. 代码如下:
private void BindData()
{
DataTable dt = .......;
if(dt != null)
{
DataView dv = dt.DefaultView;
if(DataGrid1.Attributes["SortBy"] != null)
{
dv.Sort = DataGrid1.Attributes["SortBy"];
}
DataGrid1.DataSource = dv;
DataGrid1.DataBind();
}
}
private void DataGridSort(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
DataGrid1.Attributes["SortBy"] = sortstr;
this.BindData();
//找到排序的列,并修改把它的排序属性
DataGridColumn clm = null;
for(int i=0;i<DataGrid1.Columns.Count;i++)
{
if(DataGrid1.Columns[i].SortExpression == e.SortExpression )
{
clm = DataGrid1.Columns[i];
break;
}
}
if(clm == null) return;
if(e.SortExpression.ToLower().IndexOf("desc") > 0)
{
clm.SortExpression = e.SortExpression.ToLower().Replace("desc","asc");
}
else
{
if(e.SortExpression.ToLower().IndexOf("asc") > 0)
{
clm.SortExpression = e.SortExpression.ToLower().Replace("asc","desc");
}
else
{
clm.SortExpression = e.SortExpression.ToLower() + " desc";
}
}
}
C#中实现DataGrid双向排序
最新推荐文章于 2025-08-10 11:13:09 发布
--> 在.Net 中 DataGrid 虽然有排序的功能,但并不支持双向的排...
--> 第三章: 类属性 使用过RAD开发工具的一定inspecto...
--> 在微软的.NET推出后,关于C#的有关文章也相继出现,作为微...
--> C# 用户经常提出两个问题:“我为什么要另外编写代码来使用...
--> 对于如何使用 WebRequest 和 WebResponse 类在 URI 上生成...
-->文/menhal 保证应用程序的安全应当从编写第一行代码的时候开...
-->冒泡排序 学语言要花大力气学数据结构和算法。 u...
--> 简介 Microsoft.NET Framework 精简版的一个主要功能是...
--> Xml全称可扩展标记语言(extensible marked language),这...
-->NET Framework: 就是微软Web Services 引擎 有许多程序设计...
--> 大多数 ADO.NET 数据提供程序使用连接池,以提高围绕 Microso...
--> Cache 即高速缓存 ,我想很多人对他的第一印象一定像我一样...
--> 在开发软件应用程序过程中,随着应用程序的开发,会出现重...
-->//名称空间 using System; using System.Security.Cryptograph...
--> 当我们需要使用的对象很复杂或者需要很长时间去构造,这时...
--> 在使用ASP的时候,我们时常要借助第三方控件来实现一些图象...
--> 版本控制是一个过程,它以兼容的方式对组件进行不断的改进...
--> 一个接口定义一个协定。实现接口的类或结构必须遵守其协定。接...
--> 在DataGrid中一般只能单个获取每一行的数据,若要批量获取...
--> 首先我们将从一个示范开始,在这个示范中我将使用一个按钮...
--> 2.下面这个方法是自己写的,翻页事件中调用。 private vo...
--> 要想实现翻页后继续排序,实现这样的效果: 比如共 15笔...
--> 一、前言 .NET框架是Windows应用领域中一个非常新的...
-->共享对象类别库 ASP.NET 是共享对象类别库中的一员,ASP.NE...
--> 大名鼎鼎的 Crystal Reports(水晶报表)已内嵌为微软 Vis...
--> 1、分析一下番茄花园的歌来源: PageUrl = "http://tomato...
--> 引言 在 Web 开发人员的最常见任务之中,有一项任务...
--> 1,将 Text 属性设置为将自己要连接时候的文字。 2,设置 L...
--> 介绍 很多有着不同开发背景得人都会比较熟悉单例模式。...
--> 数据类型 数据类型简写 标准命名举例 ...
--> ADO.NET 为数据在内存中的操作和储存提供了一种新模式。因...
--> 继承概述 面向对象编程 (OOP) 语言的一个主要功能就是...
--> 在Windows Mobile软件开发中.Net正扮演着日益重要的角色,...
--> 什么是 .NET 框架? Microsoft .NET 框架是生成、部署...
--> 附录 所支持平台的例外情况 命名空间 项 XPPro XPHome 20...
--> 新的 DataGridView 是 .NET 2.0 中的一个新控件,是针对 .NET...
--> 当然,这里所谓的文件是指完整的文件名称,至于文件的内容...
--> 大家一定对Web Service模型在.NET中的重要性都有所了解,那...
--> 一、资源文件的定义 简单点的说法就是程序中可以使用...
--> 本文将讨论.NET的应用程序域,并且它们是如何对ASP.NET的执...
--> 微软公司推出的ASP.NET和C# 编译器使IT业界感到了惊讶。现...
--> 在经历了N次安装CTP不成功的惨痛经历之后(N>4),我终于等...
--> Viusal Studio2005极大地丰富了它的库,可以说是科研背后的...
--> 早以前的dos应用程序中,我们经常会用命令行参数执行应用...
--> 类声明定义新的引用类型。一个类可以从另一个类继承,并且可以...
--> 在本文的第一部分,我们研究了如何设定DataGrid Web控件的...