Winform Datagridview 点击headercolumn排序
/// <summary>
/// 排序顺序
/// </summary>
bool asc;
/// <summary>
/// Dgv点击排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void dgv_Jobs_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
int index = e.ColumnIndex;
if (asc)
{
switch (index)
{
case :
listStaffs = listStaffs.OrderByDescending(w => w.Age).ToList();
break;
case :
listStaffs = listStaffs.OrderByDescending(w => w.Wage).ToList();
break;
case :
listStaffs = listStaffs.OrderByDescending(w => w.MainAblity).ToList();
break;
case :
listStaffs = listStaffs.OrderByDescending(w => w.AssistantAbility).ToList();
break;
case :
listStaffs = listStaffs.OrderByDescending(w => w.LearningAbility).ToList();
break;
case :
listStaffs = listStaffs.OrderByDescending(w => w.Greed).ToList();
break;
case :
listStaffs = listStaffs.OrderByDescending(w => w.Attitude).ToList();
break;
}
asc = false;
}
else
{
switch (index)
{
case :
listStaffs = listStaffs.OrderBy(w => w.Age).ToList();
break;
case :
listStaffs = listStaffs.OrderBy(w => w.Wage).ToList();
break;
case :
listStaffs = listStaffs.OrderBy(w => w.MainAblity).ToList();
break;
case :
listStaffs = listStaffs.OrderBy(w => w.AssistantAbility).ToList();
break;
case :
listStaffs = listStaffs.OrderBy(w => w.LearningAbility).ToList();
break;
case :
listStaffs = listStaffs.OrderBy(w => w.Greed).ToList();
break;
case :
listStaffs = listStaffs.OrderBy(w => w.Attitude).ToList();
break;
}
asc = true;
}
dgv_Jobs.DataSource = listStaffs;
}
可以通过对datasource排序实现
Winform Datagridview 点击headercolumn排序的更多相关文章
- winform dataGridView 点击列标题排序
winform手动绑定数据后,点击列标题不能实现自动排序,苦苦寻找方法,发现下面的是可行的. //建立DataTable将当前dataGridView中的数据读进DataTable中 public D ...
- winform datagridview 绑定泛型集合变得不支持排序的解决方案
原文:winform datagridview 绑定泛型集合变得不支持排序的解决方案 案例: 环境:Winform程序 控件:Datagridview 现象:Datagridview控件绑定到List ...
- winform中datagridview刷新后的排序记忆
datagridview先点标题排序,但是重新刷新之后,还是变成窗体加载后的样子 我这里用定时器刷新的. 1.先定义三个全局变量 /// <summary> /// 需要排序的列和方向 / ...
- C#中winform DataGridView常用修改点
1.修改列名 一般情况下,从数据库里面读取的列名是英文或者拼音,但是,有时候显示需要中文,这样就需要修改列名了. dgv.Columns[0].HeaderCell.Value="编号&qu ...
- 禁用datagridview中的自动排序功能
把datagridview中的自动排序功能禁用自己收集的两种方法,看看吧①DataGridView中的Columns属性里面可以设置.进入"EditColumns"窗口后,在相应的 ...
- 关于C# Winform DataGridView 设置DefaultCellStyle无效的原因与解决方案
上周在开发Winform 项目中,我曾遇到一个看似简单,但一直都没有解决的问题,那就是:设置winform DataGridView控件的行DefaultCellStyle,但却没有任何变化,我也曾求 ...
- C#实现WinForm DataGridView控件支持叠加数据绑定
我们都知道WinForm DataGridView控件支持数据绑定,使用方法很简单,只需将DataSource属性指定到相应的数据源即可,但需注意数据源必须支持IListSource类型,这里说的是支 ...
- WinForm DataGridView 绑定泛型List(List<T>)/ArrayList不显示的原因和解决
背景:无意间遇到了一个不大不小的问题,希望对一些遇到的人有所帮助! 一.问题 WinForm DataGridView 绑定泛型List (List<T>)/ArrayList不显示,UI ...
- C# winform DataGridView 常见属性
C# winform DataGridView 属性说明① 取得或者修改当前单元格的内容 ② 设定单元格只读 ③ 不显示最下面的新行 ④ 判断新增行 ⑤ 行的用户删除操作的自定义 ⑥ 行.列的隐藏和删 ...
随机推荐
- Git CMD - merge: Join two or more development histories together
命令格式 git merge [-n] [--stat] [--no-commit] [--squash] [--[no-]edit] [-s <strategy>] [-X <st ...
- C# 计算文件的 Hash 值
/// <summary> /// 提供用于计算指定文件哈希值的方法 /// <example>例如计算文件的MD5值: /// <code> /// String ...
- R语言diagram包画订单状态流图
代码如下: library("diagram") #a <- read.table(file="clipboard",header=TRUE) write ...
- Win32非递归遍历和搜索文件以及目录算法
转载请注明来源:http://www.cnblogs.com/xuesongshu 要点: 1.搜索的顶层目录在进入循环之前进栈 2.栈元素存储字符串指针,出栈时释放资源 3.每次循环开始,栈顶元素出 ...
- ubuntu下mysql的环境搭建及使用
ubuntu下mysql的环境搭建及使用 环境安装 使用如下命令分别安装服务端程序,客户端程序,及客户端依赖库 sudo apt-get install mysql-server sudo apt-g ...
- StrictMode模式介绍
最新的Android平台中(Android 2.3起),新增加了一个新的类,叫StrictMode(android.os.StrictMode).这个类可以用来帮助开发者改进他们编写的应用,并且提供了 ...
- 【leetcode】10.Regular Expression Matching
题目描述: Implement regular expression matching with support for '.' and '*'. '.' Matches any single cha ...
- 【转】Linux杀死fork产生的子进程的僵尸进程defunct
僵尸进程 就是 已经结束,但是还没有清理出去的.用kill -9 $PID 也无法杀死. 所以程序中应该避免出现僵尸进程. 用fork之后,父进程如果没有wait /waitpid 等待子进程的话,子 ...
- 关键字 virtual
Virtual是C++ OO机制中很重要的一个关键字.只要是学过C++的人都知道在类Base中加了Virtual关键字的函数就是虚拟函数(例如函数print),于是在Base的派生类Derived中就 ...
- COM原理
1, 进程内组件:服务程序杯加载到客户的进程空间,通常是DLL的形式.本地组件:服务程序与与客户程序在同一台电脑上,通常是EXE.远程组件: 服务程序与与客户程序在不同的电脑上,可以是DLL模块也可是 ...