本文向大家介绍C#实现DataGrid排序功能,可能好多人还不了解DataGrid排序功能,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。
成都创新互联是一家专注于网站设计、成都网站建设与策划设计,福海网站建设哪家好?成都创新互联做网站,专注于网站建设10多年,网设计领域的专业建站公司;建站业务涵盖:福海等地区。福海做网站价格咨询:18982081108
在.Net 中C#实现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
;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排序功能。
网站名称:C#实现DataGrid排序功能详解
文章位置:http://www.36103.cn/qtweb/news25/12725.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联