C中实现DataGrid双向排序节能

在.net 中 DataGrid 虽然有排序的功能,但并不支持双向的排序。用到了,看了些相关的帖子,自己尝试了一种方法,竟然也行得通,主要是用tributes 存了一个参数,同时在onSortCommand中修改了DataGridColumn的SortExpression. 代码如下:   private void BindData()

{

DataTable dt = .......;

if(dt != null)

{

DataView dv = faultView;

if(tributes["SortBy"] != null)

{

rt = tributes["SortBy"];

}

taSource = dv;

taBind();

}

}

private void DataGridSort(object source, taGridSortCommandEventArgs e)

{

tributes["SortBy"] = sortstr;

ndData();

//找到排序的列,并修改把它的排序属性

DataGridColumn clm = null;

for(int i=0;i   {

if(lumns[i].SortExpression == rtExpression )

{

clm = lumns[i];

break;

}

}

if(clm == null) return;

if(Lower().IndexOf("desc") 0)

{

rtExpression = Lower().Replace("desc","asc");

}

else

{

if(Lower().IndexOf("asc") 0)

{

rtExpression = Lower().Replace("asc","desc");

}

else

{

rtExpression = Lower() + " desc";

}

}

}

开利空调移机服务哪家好
血脂高吃什么好
两岁宝宝胀气怎么办快速解决