gridview 排序,datagridview自动排序,gridview自动排序示例分享

gridview 排序,datagridview自动排序,gridview自动排序示例分享

显示数据表格(一种控件)自带了数据排序功能。在设计视图下,只能对显示数据表格(一种控件)的排序数据列和排序方向进行静态设置。在后台程序中,则需要用属性方式对显示数据表格(一种控件)的这两个属性进行动态设置

示例如下:前台

复制代码代码如下:% @ Page Language=' c# ' AutoEventWireup=' true ' CodeFile=' Default。aspx。cs ' Inherits=' _ Default ' %

!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN ' ' http://www。w3。org/TR/XHTML 1/DTD/XHTML 1-过渡。' DTD '

html xmlns=' http://。w3。org/1999/XHTML ' head runat=' server ' title无标题页/title/head body form ID=' form 1 ' runat=' server ' div ASP:GridView ID=' GridView 1 ' runat=' server ' autogenerate Columns=' False '单元格填充=' 4 ' ForeColor=' # 333333 ' GridLines=' None '允许排序=' True ' on Sorting=' GridView 1 _ Sorting '页脚样式back color=' # 507 cd1 ' Font-Bold=' True ' ForeColor=' White '/行样式back color

前台注意点:需要对显示数据表格(一种控件)启用允许排序,设置开机事件,对需要排序的列设定排序表达式属性。

后台

复制代码代码如下:使用系统;使用系统。数据;使用系统。配置;使用系统网页。使用系统。网络安全;使用系统Web . com。用户界面使用系统Web . com。UI。web控件使用系统web . com。ui。web控件。web部件;使用系统Web . com。UI。html控件

public partial class _ Default:System .网络。ui。Page { protected void Page _ Load(object sender,EventArgs e) { if(!IsPostBack) { //设定初始排序参数值

//错误的属性设置方法:排序表达式、排序方向均是显示数据表格(一种控件)只读属性,无法直接赋值。这个//这个GridView1。SortExpression=' id//这个GridView1。排序方向=' ASC

//正确的属性设置方法这个GridView 1。属性。add('排序表达式',' id ');这个GridView 1。属性。add('排序方向',' ASC ');

//绑定数据源到显示数据表格(一种控件)这个bingridview();} }

///summary ///GridView排序事件////汇总受保护的void GridView 1 _ Sorting(对象发送方,GridViewSortEventArgs e) { //从事件参数获取排序数据列字符串排序表达式=e .排序表达式。tostring();

//假定为排序方向为"顺序" string sortDirection=' ASC

//"ASC "与事件参数获取到的排序方向进行比较,进行显示数据表格(一种控件)排序方向参数的修改if (sortExpression==this .GridView 1属性['排序表达式']){//获得下一次的排序状态sortDirection=(this .GridView 1属性['排序方向'].ToString()==sortDirection?desc ':' ASC ');}

//重新设定显示数据表格(一种控件)排序数据列及排序方向这个GridView 1。Attributes['排序表达式']=排序表达式;这个GridView 1。属性['排序方向']=排序方向;

这个bingridview();}

///摘要///绑定到GridView////摘要私有void bingridview(){//获取显示数据表格(一种控件)排序数据列及排序方向字符串sortExpression=this .GridView 1属性['排序表达式'];字符串排序方向=this .GridView 1属性['排序方向'];

//调用业务数据获取方法数据表dt bind=this。getdb();

//根据显示数据表格(一种控件)排序数据列及排序方向设置显示的默认数据视图如果((!字符串IsNullOrEmpty(sortExpression))(!字符串IsNullOrEmpty(排序方向))){ dt bind .Sort=string .格式(“{ 0 } { 1 }”,sortExpression,排序方向);}

//网格视图绑定并显示数据这个GridView1。DataSource=dtBind这个GridView 1。DataBind();}

///摘要///获取数据源的方法////摘要///返回数据源/returns private DataTable getDB(){ DataTable dt=new DataTable();

dt .列。add(' id ');dt .列。添加(' name ');dt .列。添加('年龄');

dt .行。Add(新对象[] { '000001 ','何奎',' 26 ' });dt .行。Add(新对象[] { '000002 ','张羽',' 26 ' });dt .行。Add(new object[] { '000003 ','竹昆殿',' 27 ' });dt .行。Add(新对象[] { '000004 ','李阳',' 25 ' });dt .行。Add(新对象[] { '000005 ','蔡丽',' 27 ' });

返回dt;}}

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: